home *** CD-ROM | disk | FTP | other *** search
/ BMUG Revelations / BMUG Revelations.toast / Entertainment / Strategy / Chess⁄Checkers / HyperNetwork Chess 3.7 / HyperNetwork CHESS 3.7
MacBinary  |  1992-01-11  |  264.4 KB  |  [STAK/WILD]

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: MacBinary (archive/macBinary).

You can browse this item here: HyperNetwork CHESS 3.7

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert HyperCard Stack (archive/hypercard) idMeta Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
100% file MacBinary II, inited, Sun Nov 29 18:37:25 1987, modified Sat Jan 11 11:17:23 1992, creator HyperCard, type HyperCard stack, 171360 bytes "HyperNetwork CHESS 3.7" , at 0x29de0 99076 bytes resource default (weak)
99% file data default
74% TrID Mac HyperCard stack (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[STAK]
macFileCreator[WILD]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 16 48 79 70 65 72 4e | 65 74 77 6f 72 6b 20 43 |..HyperN|etwork C|
|00000010| 48 45 53 53 20 33 2e 37 | 00 00 00 00 00 00 00 00 |HESS 3.7|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 53 54 41 4b 57 49 4c | 44 01 00 00 00 00 00 00 |.STAKWIL|D.......|
|00000050| 00 00 00 00 02 9d 60 00 | 01 83 04 9d d6 60 35 a5 |......`.|.....`5.|
|00000060| 94 c9 13 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 d6 fc 00 00 |........|........|
|00000080| 00 00 6c 00 53 54 41 4b | ff ff ff ff e7 d7 22 8f |..l.STAK|......".|
|00000090| 00 00 00 08 00 02 9d 60 | 00 00 6c 00 00 00 00 00 |.......`|..l.....|
|000000a0| 00 00 00 01 00 00 00 04 | 00 00 0a 14 00 00 00 27 |........|.......'|
|000000b0| 00 00 18 5f 00 00 0b da | 00 00 00 00 00 00 00 00 |..._....|........|
|000000c0| 00 00 17 80 00 00 00 00 | 00 05 00 00 10 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 01 25 80 00 | 01 25 80 00 01 25 80 00 |.....%..|.%...%..|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000210| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000270| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000280| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000290| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 80 00 00 00 08 00 00 00 |........|........|
|00000350| 88 00 22 00 88 00 22 00 | 88 88 22 22 88 88 22 22 |.."...".|..""..""|
|00000360| 88 aa 22 aa 88 aa 22 aa | cc aa 33 aa cc aa 33 aa |.."...".|..3...3.|
|00000370| ee aa bb aa ee aa bb aa | ee bb bb ee ee bb bb ee |........|........|
|00000380| ff bb ff ee ff bb ff ee | ff bb ff ff ff bb ff ff |........|........|
|00000390| 80 10 02 20 01 08 40 04 | ff ff ff ff ff ff ff ff |... ..@.|........|
|000003a0| 88 22 88 22 88 22 88 22 | 11 22 44 88 11 22 44 88 |."."."."|."D.."D.|
|000003b0| c4 80 0c 68 43 02 30 26 | b1 30 03 1b d8 c0 0c 8d |...hC.0&|.0......|
|000003c0| aa 00 aa 00 aa 00 aa 00 | 88 22 55 22 88 22 55 22 |........|."U"."U"|
|000003d0| 88 55 22 55 88 55 22 55 | 77 dd 77 dd 77 dd 77 dd |.U"U.U"U|w.w.w.w.|
|000003e0| 80 00 00 00 00 00 00 00 | aa 55 aa 55 aa 55 aa 55 |........|.U.U.U.U|
|000003f0| 03 84 48 30 0c 02 01 01 | 82 44 39 44 82 01 01 01 |..H0....|.D9D....|
|00000400| 88 14 22 41 88 41 22 14 | 80 80 41 3e 08 08 14 e3 |.."A.A".|..A>....|
|00000410| 22 04 8c 74 22 17 98 10 | be 80 88 08 eb 08 88 80 |"..t"...|........|
|00000420| 25 c8 32 89 64 24 4c 92 | a2 9c 41 be 2a c9 14 eb |%.2.d$L.|..A.*...|
|00000430| 40 a0 00 00 04 0a 00 00 | 80 40 20 00 02 04 08 00 |@.......|.@ .....|
|00000440| aa 00 80 00 88 00 80 00 | ff 80 80 80 80 80 80 80 |........|........|
|00000450| 08 1c 22 c1 80 01 02 04 | ff 80 80 80 ff 08 08 08 |..".....|........|
|00000460| f8 74 22 47 8f 17 22 71 | bf 00 bf bf b0 b0 b0 b0 |.t"G.."q|........|
|00000470| ff 7f be 5d a2 41 80 00 | fa f5 fa f5 a0 50 a0 50 |...].A..|.....P.P|
|00000480| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000490| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000004f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000500| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000520| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000530| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000540| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000550| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000560| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000580| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000590| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000005f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000600| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000610| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000620| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000630| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000640| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000660| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000670| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000680| 6f 6e 20 53 65 6e 64 52 | 6f 75 74 69 6e 65 20 49 |on SendR|outine I|
|00000690| 6e 66 6f 50 61 63 6b 65 | 74 0d 67 6c 6f 62 61 6c |nfoPacke|t.global|
|000006a0| 20 67 6c 6f 62 61 6c 41 | 54 50 44 61 74 61 2c 20 | globalA|TPData, |
|000006b0| 67 6c 6f 62 61 6c 52 65 | 73 70 6f 6e 73 65 44 61 |globalRe|sponseDa|
|000006c0| 74 61 0d 67 6c 6f 62 61 | 6c 20 67 6c 6f 62 61 6c |ta.globa|l global|
|000006d0| 52 65 63 65 69 76 65 44 | 61 74 61 2c 20 20 6d 79 |ReceiveD|ata, my|
|000006e0| 45 6e 74 69 74 79 4e 61 | 6d 65 0d 67 6c 6f 62 61 |EntityNa|me.globa|
|000006f0| 6c 20 67 6c 6f 62 61 6c | 53 4b 54 44 61 74 61 2c |l global|SKTData,|
|00000700| 20 67 6c 6f 62 61 6c 4e | 42 50 44 61 74 61 0d 67 | globalN|BPData.g|
|00000710| 6c 6f 62 61 6c 20 41 70 | 70 6c 65 54 61 6c 6b 46 |lobal Ap|pleTalkF|
|00000720| 6c 61 67 2c 6f 70 70 6f | 6e 65 6e 74 0d 0d 49 46 |lag,oppo|nent..IF|
|00000730| 20 41 70 70 6c 65 54 61 | 6c 6b 46 6c 61 67 20 69 | AppleTa|lkFlag i|
|00000740| 73 20 74 72 75 65 20 54 | 48 45 4e 0d 41 54 50 53 |s true T|HEN.ATPS|
|00000750| 65 6e 64 52 65 71 75 65 | 73 74 20 6f 70 70 6f 6e |endReque|st oppon|
|00000760| 65 6e 74 2c 49 6e 66 6f | 50 61 63 6b 65 74 0d 45 |ent,Info|Packet.E|
|00000770| 4c 53 45 0d 53 65 6e 64 | 53 50 6f 72 74 20 31 2c |LSE.Send|SPort 1,|
|00000780| 46 61 6c 73 65 2c 49 6e | 66 6f 50 61 63 6b 65 74 |False,In|foPacket|
|00000790| 0d 45 6e 64 20 49 46 0d | 45 6e 64 20 53 65 6e 64 |.End IF.|End Send|
|000007a0| 52 6f 75 74 69 6e 65 0d | 0d 6f 6e 20 53 65 6e 64 |Routine.|.on Send|
|000007b0| 41 6c 6c 57 61 74 63 68 | 65 72 73 52 6f 75 74 69 |AllWatch|ersRouti|
|000007c0| 6e 65 20 49 6e 66 6f 50 | 61 63 6b 65 74 0d 67 6c |ne InfoP|acket.gl|
|000007d0| 6f 62 61 6c 20 67 6c 6f | 62 61 6c 41 54 50 44 61 |obal glo|balATPDa|
|000007e0| 74 61 2c 20 67 6c 6f 62 | 61 6c 52 65 73 70 6f 6e |ta, glob|alRespon|
|000007f0| 73 65 44 61 74 61 0d 67 | 6c 6f 62 61 6c 20 67 6c |seData.g|lobal gl|
|00000800| 6f 62 61 6c 52 65 63 65 | 69 76 65 44 61 74 61 2c |obalRece|iveData,|
|00000810| 20 20 6d 79 45 6e 74 69 | 74 79 4e 61 6d 65 0d 67 | myEnti|tyName.g|
|00000820| 6c 6f 62 61 6c 20 67 6c | 6f 62 61 6c 53 4b 54 44 |lobal gl|obalSKTD|
|00000830| 61 74 61 2c 20 67 6c 6f | 62 61 6c 4e 42 50 44 61 |ata, glo|balNBPDa|
|00000840| 74 61 0d 67 6c 6f 62 61 | 6c 20 41 70 70 6c 65 54 |ta.globa|l AppleT|
|00000850| 61 6c 6b 46 6c 61 67 0d | 67 6c 6f 62 61 6c 20 4d |alkFlag.|global M|
|00000860| 6f 76 65 4c 6f 63 6b 65 | 64 46 6c 61 67 2c 41 43 |oveLocke|dFlag,AC|
|00000870| 4b 46 6c 61 67 0d 0d 49 | 46 20 41 70 70 6c 65 54 |KFlag..I|F AppleT|
|00000880| 61 6c 6b 46 6c 61 67 20 | 69 73 20 74 72 75 65 20 |alkFlag |is true |
|00000890| 54 48 45 4e 0d 70 75 74 | 20 74 72 75 65 20 69 6e |THEN.put| true in|
|000008a0| 74 6f 20 4d 6f 76 65 4c | 6f 63 6b 65 64 46 6c 61 |to MoveL|ockedFla|
|000008b0| 67 0d 70 75 74 20 22 48 | 79 70 65 72 4e 65 74 77 |g.put "H|yperNetw|
|000008c0| 6f 72 6b 43 48 45 53 53 | 57 61 74 63 68 65 72 22 |orkCHESS|Watcher"|
|000008d0| 20 69 6e 74 6f 20 4f 62 | 6a 65 63 74 54 79 70 65 | into Ob|jectType|
|000008e0| 0d 52 65 70 65 61 74 20 | 77 69 74 68 20 78 20 3d |.Repeat |with x =|
|000008f0| 20 31 20 74 6f 20 28 74 | 68 65 20 6e 75 6d 62 65 | 1 to (t|he numbe|
|00000900| 72 20 6f 66 20 6c 69 6e | 65 73 20 6f 66 20 66 6c |r of lin|es of fl|
|00000910| 64 20 22 57 61 74 63 68 | 4c 69 73 74 22 29 0d 70 |d "Watch|List").p|
|00000920| 75 74 20 6c 69 6e 65 20 | 78 20 6f 66 20 66 6c 64 |ut line |x of fld|
|00000930| 20 22 57 61 74 63 68 4c | 69 73 74 22 20 69 6e 74 | "WatchL|ist" int|
|00000940| 6f 20 57 61 74 63 68 65 | 72 0d 49 46 20 4e 42 50 |o Watche|r.IF NBP|
|00000950| 43 6f 6e 66 69 72 6d 4e | 61 6d 65 28 57 61 74 63 |ConfirmN|ame(Watc|
|00000960| 68 65 72 2c 4f 62 6a 65 | 63 74 54 79 70 65 29 20 |her,Obje|ctType) |
|00000970| 69 73 20 54 72 75 65 20 | 54 48 45 4e 0d 41 54 50 |is True |THEN.ATP|
|00000980| 53 65 6e 64 52 65 71 75 | 65 73 74 20 57 61 74 63 |SendRequ|est Watc|
|00000990| 68 65 72 2c 49 6e 66 6f | 50 61 63 6b 65 74 0d 41 |her,Info|Packet.A|
|000009a0| 54 50 52 65 63 65 69 76 | 65 20 47 69 76 65 55 73 |TPReceiv|e GiveUs|
|000009b0| 54 68 65 44 61 74 61 0d | 45 4c 53 45 0d 41 6e 73 |TheData.|ELSE.Ans|
|000009c0| 77 65 72 20 22 57 61 74 | 63 68 65 72 20 22 20 26 |wer "Wat|cher " &|
|000009d0| 20 57 61 74 63 68 65 72 | 20 26 20 22 20 68 61 73 | Watcher| & " has|
|000009e0| 20 6c 65 66 74 20 74 68 | 65 20 6e 65 74 77 6f 72 | left th|e networ|
|000009f0| 6b 2e 22 20 77 69 74 68 | 20 22 4f 4b 22 0d 64 65 |k." with| "OK".de|
|00000a00| 6c 65 74 65 20 6c 69 6e | 65 20 78 20 6f 66 20 66 |lete lin|e x of f|
|00000a10| 6c 64 20 22 57 61 74 63 | 68 4c 69 73 74 22 0d 45 |ld "Watc|hList".E|
|00000a20| 6e 64 20 49 46 0d 45 6e | 64 20 52 65 70 65 61 74 |nd IF.En|d Repeat|
|00000a30| 0d 70 75 74 20 74 72 75 | 65 20 69 6e 74 6f 20 41 |.put tru|e into A|
|00000a40| 43 4b 46 6c 61 67 0d 70 | 75 74 20 66 61 6c 73 65 |CKFlag.p|ut false|
|00000a50| 20 69 6e 74 6f 20 4d 6f | 76 65 4c 6f 63 6b 65 64 | into Mo|veLocked|
|00000a60| 46 6c 61 67 0d 45 6e 64 | 20 49 46 0d 45 6e 64 20 |Flag.End| IF.End |
|00000a70| 53 65 6e 64 41 6c 6c 57 | 61 74 63 68 65 72 73 52 |SendAllW|atchersR|
|00000a80| 6f 75 74 69 6e 65 0d 0d | 6f 6e 20 53 65 6e 64 57 |outine..|on SendW|
|00000a90| 61 74 63 68 65 72 52 6f | 75 74 69 6e 65 20 57 61 |atcherRo|utine Wa|
|00000aa0| 74 63 68 65 72 2c 49 6e | 66 6f 50 61 63 6b 65 74 |tcher,In|foPacket|
|00000ab0| 0d 67 6c 6f 62 61 6c 20 | 67 6c 6f 62 61 6c 41 54 |.global |globalAT|
|00000ac0| 50 44 61 74 61 2c 20 67 | 6c 6f 62 61 6c 52 65 73 |PData, g|lobalRes|
|00000ad0| 70 6f 6e 73 65 44 61 74 | 61 0d 67 6c 6f 62 61 6c |ponseDat|a.global|
|00000ae0| 20 67 6c 6f 62 61 6c 52 | 65 63 65 69 76 65 44 61 | globalR|eceiveDa|
|00000af0| 74 61 2c 20 20 6d 79 45 | 6e 74 69 74 79 4e 61 6d |ta, myE|ntityNam|
|00000b00| 65 0d 67 6c 6f 62 61 6c | 20 67 6c 6f 62 61 6c 53 |e.global| globalS|
|00000b10| 4b 54 44 61 74 61 2c 20 | 67 6c 6f 62 61 6c 4e 42 |KTData, |globalNB|
|00000b20| 50 44 61 74 61 0d 67 6c | 6f 62 61 6c 20 41 70 70 |PData.gl|obal App|
|00000b30| 6c 65 54 61 6c 6b 46 6c | 61 67 0d 67 6c 6f 62 61 |leTalkFl|ag.globa|
|00000b40| 6c 20 4d 6f 76 65 4c 6f | 63 6b 65 64 46 6c 61 67 |l MoveLo|ckedFlag|
|00000b50| 2c 41 43 4b 46 6c 61 67 | 0d 0d 49 46 20 41 70 70 |,ACKFlag|..IF App|
|00000b60| 6c 65 54 61 6c 6b 46 6c | 61 67 20 69 73 20 74 72 |leTalkFl|ag is tr|
|00000b70| 75 65 20 54 48 45 4e 0d | 70 75 74 20 74 72 75 65 |ue THEN.|put true|
|00000b80| 20 69 6e 74 6f 20 4d 6f | 76 65 4c 6f 63 6b 65 64 | into Mo|veLocked|
|00000b90| 46 6c 61 67 0d 70 75 74 | 20 22 48 79 70 65 72 4e |Flag.put| "HyperN|
|00000ba0| 65 74 77 6f 72 6b 43 48 | 45 53 53 57 61 74 63 68 |etworkCH|ESSWatch|
|00000bb0| 65 72 22 20 69 6e 74 6f | 20 4f 62 6a 65 63 74 54 |er" into| ObjectT|
|00000bc0| 79 70 65 0d 49 46 20 4e | 42 50 43 6f 6e 66 69 72 |ype.IF N|BPConfir|
|00000bd0| 6d 4e 61 6d 65 28 57 61 | 74 63 68 65 72 2c 4f 62 |mName(Wa|tcher,Ob|
|00000be0| 6a 65 63 74 54 79 70 65 | 29 20 69 73 20 54 72 75 |jectType|) is Tru|
|00000bf0| 65 20 54 48 45 4e 0d 41 | 54 50 53 65 6e 64 52 65 |e THEN.A|TPSendRe|
|00000c00| 71 75 65 73 74 20 57 61 | 74 63 68 65 72 2c 49 6e |quest Wa|tcher,In|
|00000c10| 66 6f 50 61 63 6b 65 74 | 0d 45 6e 64 20 49 46 0d |foPacket|.End IF.|
|00000c20| 70 75 74 20 74 72 75 65 | 20 69 6e 74 6f 20 41 43 |put true| into AC|
|00000c30| 4b 46 6c 61 67 0d 70 75 | 74 20 66 61 6c 73 65 20 |KFlag.pu|t false |
|00000c40| 69 6e 74 6f 20 4d 6f 76 | 65 4c 6f 63 6b 65 64 46 |into Mov|eLockedF|
|00000c50| 6c 61 67 0d 45 6e 64 20 | 49 46 0d 45 6e 64 20 53 |lag.End |IF.End S|
|00000c60| 65 6e 64 57 61 74 63 68 | 65 72 52 6f 75 74 69 6e |endWatch|erRoutin|
|00000c70| 65 0d 0d 6f 6e 20 53 65 | 74 41 63 6b 20 54 68 65 |e..on Se|tAck The|
|00000c80| 46 6c 61 67 0d 47 6c 6f | 62 61 6c 20 41 63 6b 46 |Flag.Glo|bal AckF|
|00000c90| 6c 61 67 0d 70 75 74 20 | 54 68 65 46 6c 61 67 20 |lag.put |TheFlag |
|00000ca0| 69 6e 74 6f 20 41 63 6b | 46 6c 61 67 0d 45 6e 64 |into Ack|Flag.End|
|00000cb0| 20 53 65 74 41 63 6b 0d | 0d 4f 6e 20 47 69 76 65 | SetAck.|.On Give|
|00000cc0| 55 73 54 68 65 44 61 74 | 61 0d 47 6c 6f 62 61 6c |UsTheDat|a.Global|
|00000cd0| 20 47 6c 6f 62 61 6c 52 | 65 63 65 69 76 65 44 61 | GlobalR|eceiveDa|
|00000ce0| 74 61 2c 47 6c 6f 62 61 | 6c 52 65 73 70 6f 6e 73 |ta,Globa|lRespons|
|00000cf0| 65 44 61 74 61 2c 49 6e | 63 6f 6d 69 6e 67 43 68 |eData,In|comingCh|
|00000d00| 61 72 73 0d 70 75 74 20 | 47 6c 6f 62 61 6c 52 65 |ars.put |GlobalRe|
|00000d10| 63 65 69 76 65 44 61 74 | 61 20 61 66 74 65 72 20 |ceiveDat|a after |
|00000d20| 49 6e 63 6f 6d 69 6e 67 | 43 68 61 72 73 0d 70 75 |Incoming|Chars.pu|
|00000d30| 74 20 65 6d 70 74 79 20 | 69 6e 74 6f 20 47 6c 6f |t empty |into Glo|
|00000d40| 62 61 6c 52 65 73 70 6f | 6e 73 65 44 61 74 61 0d |balRespo|nseData.|
|00000d50| 45 6e 64 20 47 69 76 65 | 55 73 54 68 65 44 61 74 |End Give|UsTheDat|
|00000d60| 61 0d 0d 46 75 6e 63 74 | 69 6f 6e 20 43 6c 69 63 |a..Funct|ion Clic|
|00000d70| 6b 4c 69 6e 65 0d 72 65 | 74 75 72 6e 20 28 74 72 |kLine.re|turn (tr|
|00000d80| 75 6e 63 28 28 28 73 63 | 72 6f 6c 6c 20 6f 66 20 |unc(((sc|roll of |
|00000d90| 74 68 65 20 74 61 72 67 | 65 74 29 20 c2 0d 2b 20 |the targ|et) ..+ |
|00000da0| 28 69 74 65 6d 20 32 20 | 6f 66 20 74 68 65 20 63 |(item 2 |of the c|
|00000db0| 6c 69 63 6b 6c 6f 63 29 | 20 c2 0d 2d 20 28 69 74 |lickloc)| ..- (it|
|00000dc0| 65 6d 20 32 20 6f 66 20 | 74 68 65 20 72 65 63 74 |em 2 of |the rect|
|00000dd0| 20 6f 66 20 74 68 65 20 | 74 61 72 67 65 74 29 29 | of the |target))|
|00000de0| 20 c2 0d 64 69 76 20 74 | 68 65 20 74 65 78 74 68 | ..div t|he texth|
|00000df0| 65 69 67 68 74 20 6f 66 | 20 74 68 65 20 74 61 72 |eight of| the tar|
|00000e00| 67 65 74 29 20 2b 20 31 | 29 0d 45 6e 64 20 43 6c |get) + 1|).End Cl|
|00000e10| 69 63 6b 4c 69 6e 65 0d | 0d 4f 6e 20 4d 61 6b 65 |ickLine.|.On Make|
|00000e20| 43 6f 6d 70 75 74 65 72 | 4d 6f 76 65 0d 47 6c 6f |Computer|Move.Glo|
|00000e30| 62 61 6c 20 43 6f 6d 70 | 75 74 65 72 57 6f 6e 2c |bal Comp|uterWon,|
|00000e40| 50 6c 61 79 43 6f 6c 6f | 72 2c 50 6c 61 79 4c 65 |PlayColo|r,PlayLe|
|00000e50| 76 65 6c 2c 4d 6f 76 65 | 43 6f 75 6e 74 2c 4d 6f |vel,Move|Count,Mo|
|00000e60| 76 65 54 72 65 65 46 6c | 61 67 0d 47 6c 6f 62 61 |veTreeFl|ag.Globa|
|00000e70| 6c 20 42 6f 61 72 64 53 | 71 75 61 72 65 73 2c 45 |l BoardS|quares,E|
|00000e80| 76 61 6c 46 6c 61 67 2c | 43 6c 6f 63 6b 46 6c 61 |valFlag,|ClockFla|
|00000e90| 67 2c 50 69 65 63 65 4d | 61 70 2c 43 6f 6d 70 75 |g,PieceM|ap,Compu|
|00000ea0| 74 65 72 4a 75 73 74 4d | 6f 76 65 64 0d 47 6c 6f |terJustM|oved.Glo|
|00000eb0| 62 61 6c 20 43 6f 6d 70 | 75 74 65 72 4d 6f 76 65 |bal Comp|uterMove|
|00000ec0| 2c 43 75 72 72 65 6e 74 | 53 65 63 73 2c 43 61 70 |,Current|Secs,Cap|
|00000ed0| 74 75 72 65 4d 6f 76 65 | 46 6c 61 67 2c 54 6f 75 |tureMove|Flag,Tou|
|00000ee0| 63 68 65 64 50 69 65 63 | 65 2c 50 4d 0d 70 75 74 |chedPiec|e,PM.put|
|00000ef0| 20 66 61 6c 73 65 20 69 | 6e 74 6f 20 43 6f 6d 70 | false i|nto Comp|
|00000f00| 75 74 65 72 57 6f 6e 0d | 70 75 74 20 50 6c 61 79 |uterWon.|put Play|
|00000f10| 43 6f 6c 6f 72 20 69 6e | 74 6f 20 50 43 0d 70 75 |Color in|to PC.pu|
|00000f20| 74 20 50 6c 61 79 4c 65 | 76 65 6c 20 69 6e 74 6f |t PlayLe|vel into|
|00000f30| 20 50 4c 0d 70 75 74 20 | 4d 6f 76 65 43 6f 75 6e | PL.put |MoveCoun|
|00000f40| 74 20 69 6e 74 6f 20 4d | 43 0d 70 75 74 20 4d 6f |t into M|C.put Mo|
|00000f50| 76 65 54 72 65 65 46 6c | 61 67 20 69 6e 74 6f 20 |veTreeFl|ag into |
|00000f60| 4d 46 0d 70 75 74 20 45 | 76 61 6c 46 6c 61 67 20 |MF.put E|valFlag |
|00000f70| 69 6e 74 6f 20 45 46 0d | 73 65 74 20 74 68 65 20 |into EF.|set the |
|00000f80| 63 75 72 73 6f 72 20 74 | 6f 20 77 61 74 63 68 0d |cursor t|o watch.|
|00000f90| 73 68 6f 77 20 62 6b 67 | 6e 64 20 62 74 6e 20 22 |show bkg|nd btn "|
|00000fa0| 2e 2e 2e 74 68 69 6e 6b | 69 6e 67 2e 2e 2e 22 0d |...think|ing...".|
|00000fb0| 70 75 74 20 74 68 65 20 | 72 61 6e 64 6f 6d 20 6f |put the |random o|
|00000fc0| 66 20 35 30 20 69 6e 74 | 6f 20 52 31 0d 70 75 74 |f 50 int|o R1.put|
|00000fd0| 20 74 68 65 20 72 61 6e | 64 6f 6d 20 6f 66 20 35 | the ran|dom of 5|
|00000fe0| 30 20 69 6e 74 6f 20 52 | 32 0d 70 75 74 20 74 68 |0 into R|2.put th|
|00000ff0| 65 20 72 61 6e 64 6f 6d | 20 6f 66 20 35 30 20 69 |e random| of 50 i|
|00001000| 6e 74 6f 20 52 33 0d 70 | 75 74 20 43 6c 6f 63 6b |nto R3.p|ut Clock|
|00001010| 46 6c 61 67 20 69 6e 74 | 6f 20 43 46 0d 70 75 74 |Flag int|o CF.put|
|00001020| 20 62 6b 67 6e 64 20 66 | 6c 64 20 22 43 6c 6f 63 | bkgnd f|ld "Cloc|
|00001030| 6b 32 22 20 69 6e 74 6f | 20 50 47 0d 70 75 74 20 |k2" into| PG.put |
|00001040| 43 68 65 73 73 43 6f 6d | 70 75 74 65 72 58 66 63 |ChessCom|puterXfc|
|00001050| 6e 50 28 50 69 65 63 65 | 4d 61 70 2c 50 43 2c 50 |nP(Piece|Map,PC,P|
|00001060| 4c 2c 4d 43 2c 45 46 2c | 4d 46 2c 52 31 2c 52 32 |L,MC,EF,|MF,R1,R2|
|00001070| 2c 52 33 2c 43 46 2c 50 | 47 2c 50 4d 29 20 c2 0d |,R3,CF,P|G,PM) ..|
|00001080| 69 6e 74 6f 20 43 6f 6d | 70 75 74 65 72 4d 6f 76 |into Com|puterMov|
|00001090| 65 0d 70 75 74 20 43 6f | 6d 70 75 74 65 72 4d 6f |e.put Co|mputerMo|
|000010a0| 76 65 20 69 6e 74 6f 20 | 50 4d 0d 70 75 74 20 74 |ve into |PM.put t|
|000010b0| 72 75 65 20 69 6e 74 6f | 20 43 6f 6d 70 75 74 65 |rue into| Compute|
|000010c0| 72 4a 75 73 74 4d 6f 76 | 65 64 0d 70 75 74 20 30 |rJustMov|ed.put 0|
|000010d0| 20 69 6e 74 6f 20 43 75 | 72 72 65 6e 74 53 65 63 | into Cu|rrentSec|
|000010e0| 73 0d 49 46 20 74 68 65 | 20 76 69 73 69 62 6c 65 |s.IF the| visible|
|000010f0| 20 6f 66 20 62 6b 67 6e | 64 20 62 74 6e 20 22 2e | of bkgn|d btn ".|
|00001100| 2e 2e 49 6e 74 65 72 72 | 75 70 74 69 6e 67 20 4c |..Interr|upting L|
|00001110| 6f 6f 6b 61 68 65 61 64 | 22 20 69 73 20 74 72 75 |ookahead|" is tru|
|00001120| 65 20 54 48 45 4e 0d 77 | 61 69 74 20 31 20 73 65 |e THEN.w|ait 1 se|
|00001130| 63 6f 6e 64 0d 68 69 64 | 65 20 62 6b 67 6e 64 20 |cond.hid|e bkgnd |
|00001140| 62 74 6e 20 22 2e 2e 2e | 49 6e 74 65 72 72 75 70 |btn "...|Interrup|
|00001150| 74 69 6e 67 20 4c 6f 6f | 6b 61 68 65 61 64 22 0d |ting Loo|kahead".|
|00001160| 45 6e 64 20 49 46 0d 68 | 69 64 65 20 62 6b 67 6e |End IF.h|ide bkgn|
|00001170| 64 20 62 74 6e 20 22 2e | 2e 2e 74 68 69 6e 6b 69 |d btn ".|..thinki|
|00001180| 6e 67 2e 2e 2e 22 0d 68 | 69 64 65 20 6d 73 67 0d |ng...".h|ide msg.|
|00001190| 73 65 74 20 74 68 65 20 | 63 75 72 73 6f 72 20 74 |set the |cursor t|
|000011a0| 6f 20 31 0d 70 75 74 20 | 63 68 61 72 20 31 20 74 |o 1.put |char 1 t|
|000011b0| 6f 20 32 20 6f 66 20 43 | 6f 6d 70 75 74 65 72 4d |o 2 of C|omputerM|
|000011c0| 6f 76 65 20 69 6e 74 6f | 20 43 6f 6d 70 75 74 65 |ove into| Compute|
|000011d0| 72 44 65 70 61 72 74 75 | 72 65 53 71 0d 70 75 74 |rDepartu|reSq.put|
|000011e0| 20 6f 66 66 73 65 74 28 | 43 6f 6d 70 75 74 65 72 | offset(|Computer|
|000011f0| 44 65 70 61 72 74 75 72 | 65 53 71 2c 42 6f 61 72 |Departur|eSq,Boar|
|00001200| 64 53 71 75 61 72 65 73 | 29 20 69 6e 74 6f 20 49 |dSquares|) into I|
|00001210| 6e 64 65 78 0d 70 75 74 | 20 28 63 68 61 72 20 33 |ndex.put| (char 3|
|00001220| 20 6f 66 20 43 6f 6d 70 | 75 74 65 72 4d 6f 76 65 | of Comp|uterMove|
|00001230| 20 3d 20 22 78 22 29 20 | 69 6e 74 6f 20 43 61 70 | = "x") |into Cap|
|00001240| 74 75 72 65 4d 6f 76 65 | 46 6c 61 67 0d 70 75 74 |tureMove|Flag.put|
|00001250| 20 63 68 61 72 20 49 6e | 64 65 78 20 74 6f 20 49 | char In|dex to I|
|00001260| 6e 64 65 78 2b 31 20 6f | 66 20 50 69 65 63 65 4d |ndex+1 o|f PieceM|
|00001270| 61 70 20 69 6e 74 6f 20 | 54 6f 75 63 68 65 64 50 |ap into |TouchedP|
|00001280| 69 65 63 65 0d 45 6e 64 | 20 4d 61 6b 65 43 6f 6d |iece.End| MakeCom|
|00001290| 70 75 74 65 72 4d 6f 76 | 65 0d 0d 4f 6e 20 53 77 |puterMov|e..On Sw|
|000012a0| 61 70 50 6c 61 79 43 6f | 6c 6f 72 0d 47 6c 6f 62 |apPlayCo|lor.Glob|
|000012b0| 61 6c 20 50 6c 61 79 43 | 6f 6c 6f 72 0d 49 46 20 |al PlayC|olor.IF |
|000012c0| 50 6c 61 79 43 6f 6c 6f | 72 20 3d 20 22 42 4c 41 |PlayColo|r = "BLA|
|000012d0| 43 4b 22 20 54 48 45 4e | 0d 70 75 74 20 22 57 48 |CK" THEN|.put "WH|
|000012e0| 49 54 45 22 20 69 6e 74 | 6f 20 50 6c 61 79 43 6f |ITE" int|o PlayCo|
|000012f0| 6c 6f 72 0d 45 4c 53 45 | 0d 70 75 74 20 22 42 4c |lor.ELSE|.put "BL|
|00001300| 41 43 4b 22 20 69 6e 74 | 6f 20 50 6c 61 79 43 6f |ACK" int|o PlayCo|
|00001310| 6c 6f 72 0d 45 4e 44 20 | 49 46 0d 45 6e 64 20 53 |lor.END |IF.End S|
|00001320| 77 61 70 50 6c 61 79 43 | 6f 6c 6f 72 0d 0d 4f 6e |wapPlayC|olor..On|
|00001330| 20 53 77 61 70 48 61 6c | 66 4d 6f 76 65 0d 47 6c | SwapHal|fMove.Gl|
|00001340| 6f 62 61 6c 20 48 61 6c | 66 4d 6f 76 65 2c 4d 6f |obal Hal|fMove,Mo|
|00001350| 76 65 43 6f 75 6e 74 0d | 49 46 20 48 61 6c 66 4d |veCount.|IF HalfM|
|00001360| 6f 76 65 20 3d 20 31 20 | 54 48 45 4e 0d 70 75 74 |ove = 1 |THEN.put|
|00001370| 20 32 20 69 6e 74 6f 20 | 48 61 6c 66 4d 6f 76 65 | 2 into |HalfMove|
|00001380| 0d 45 4c 53 45 0d 70 75 | 74 20 31 20 69 6e 74 6f |.ELSE.pu|t 1 into|
|00001390| 20 48 61 6c 66 4d 6f 76 | 65 0d 61 64 64 20 31 20 | HalfMov|e.add 1 |
|000013a0| 74 6f 20 4d 6f 76 65 43 | 6f 75 6e 74 0d 45 4e 44 |to MoveC|ount.END|
|000013b0| 20 49 46 0d 45 6e 64 20 | 53 77 61 70 48 61 6c 66 | IF.End |SwapHalf|
|000013c0| 4d 6f 76 65 0d 0d 6f 6e | 20 53 63 72 69 70 74 41 |Move..on| ScriptA|
|000013d0| 6c 6c 53 71 75 61 72 65 | 73 0d 70 75 74 20 74 68 |llSquare|s.put th|
|000013e0| 65 20 73 63 72 69 70 74 | 20 6f 66 20 62 61 63 6b |e script| of back|
|000013f0| 67 72 6f 75 6e 64 20 62 | 75 74 74 6f 6e 20 22 61 |ground b|utton "a|
|00001400| 31 22 20 69 6e 74 6f 20 | 62 61 73 65 53 63 72 69 |1" into |baseScri|
|00001410| 70 74 0d 52 65 70 65 61 | 74 20 77 69 74 68 20 78 |pt.Repea|t with x|
|00001420| 20 3d 20 31 20 74 6f 20 | 38 0d 52 65 70 65 61 74 | = 1 to |8.Repeat|
|00001430| 20 77 69 74 68 20 79 20 | 3d 20 39 37 20 74 6f 20 | with y |= 97 to |
|00001440| 31 30 34 0d 70 75 74 20 | 74 68 65 20 4e 75 6d 54 |104.put |the NumT|
|00001450| 6f 43 68 61 72 20 6f 66 | 20 79 20 26 20 78 20 69 |oChar of| y & x i|
|00001460| 6e 74 6f 20 42 75 74 74 | 6f 6e 4e 61 6d 65 0d 70 |nto Butt|onName.p|
|00001470| 75 74 20 22 4e 6f 77 20 | 73 63 72 69 70 74 69 6e |ut "Now |scriptin|
|00001480| 67 20 62 75 74 74 6f 6e | 20 22 20 26 20 42 75 74 |g button| " & But|
|00001490| 74 6f 6e 4e 61 6d 65 20 | 69 6e 74 6f 20 6d 73 67 |tonName |into msg|
|000014a0| 0d 73 65 74 20 74 68 65 | 20 73 63 72 69 70 74 20 |.set the| script |
|000014b0| 6f 66 20 62 61 63 6b 67 | 72 6f 75 6e 64 20 62 75 |of backg|round bu|
|000014c0| 74 74 6f 6e 20 42 75 74 | 74 6f 6e 4e 61 6d 65 20 |tton But|tonName |
|000014d0| 74 6f 20 62 61 73 65 53 | 63 72 69 70 74 0d 45 6e |to baseS|cript.En|
|000014e0| 64 20 52 65 70 65 61 74 | 0d 45 6e 64 20 52 65 70 |d Repeat|.End Rep|
|000014f0| 65 61 74 0d 45 6e 64 20 | 53 63 72 69 70 74 41 6c |eat.End |ScriptAl|
|00001500| 6c 53 71 75 61 72 65 73 | 0d 0d 6f 6e 20 53 68 6f |lSquares|..on Sho|
|00001510| 77 4c 65 67 61 6c 53 71 | 75 61 72 65 73 46 6f 72 |wLegalSq|uaresFor|
|00001520| 54 68 69 73 50 69 65 63 | 65 0d 47 6c 6f 62 61 6c |ThisPiec|e.Global|
|00001530| 20 50 6c 61 79 43 6f 6c | 6f 72 2c 50 69 65 63 65 | PlayCol|or,Piece|
|00001540| 4d 61 70 2c 42 6f 61 72 | 64 53 71 75 61 72 65 73 |Map,Boar|dSquares|
|00001550| 2c 43 6f 6c 6f 72 4d 61 | 70 2c 54 61 72 67 65 74 |,ColorMa|p,Target|
|00001560| 53 71 0d 47 6c 6f 62 61 | 6c 20 53 68 6f 77 4c 65 |Sq.Globa|l ShowLe|
|00001570| 67 61 6c 53 71 75 61 72 | 65 73 46 6c 61 67 0d 0d |galSquar|esFlag..|
|00001580| 70 75 74 20 6f 66 66 73 | 65 74 28 54 61 72 67 65 |put offs|et(Targe|
|00001590| 74 53 71 2c 42 6f 61 72 | 64 53 71 75 61 72 65 73 |tSq,Boar|dSquares|
|000015a0| 29 20 69 6e 74 6f 20 53 | 71 49 6e 64 65 78 0d 70 |) into S|qIndex.p|
|000015b0| 75 74 20 63 68 61 72 20 | 53 71 49 6e 64 65 78 20 |ut char |SqIndex |
|000015c0| 74 6f 20 53 71 49 6e 64 | 65 78 2b 31 20 6f 66 20 |to SqInd|ex+1 of |
|000015d0| 43 6f 6c 6f 72 4d 61 70 | 20 69 6e 74 6f 20 54 53 |ColorMap| into TS|
|000015e0| 71 43 6f 6c 6f 72 0d 70 | 75 74 20 63 68 61 72 20 |qColor.p|ut char |
|000015f0| 53 71 49 6e 64 65 78 20 | 74 6f 20 53 71 49 6e 64 |SqIndex |to SqInd|
|00001600| 65 78 2b 31 20 6f 66 20 | 50 69 65 63 65 4d 61 70 |ex+1 of |PieceMap|
|00001610| 20 69 6e 74 6f 20 4d 6f | 76 69 6e 67 50 69 65 63 | into Mo|vingPiec|
|00001620| 65 0d 70 75 74 20 63 68 | 61 72 20 31 20 6f 66 20 |e.put ch|ar 1 of |
|00001630| 4d 6f 76 69 6e 67 50 69 | 65 63 65 20 69 6e 74 6f |MovingPi|ece into|
|00001640| 20 50 69 65 63 65 43 6f | 6c 6f 72 0d 49 46 20 63 | PieceCo|lor.IF c|
|00001650| 68 61 72 20 31 20 6f 66 | 20 50 6c 61 79 43 6f 6c |har 1 of| PlayCol|
|00001660| 6f 72 20 3d 20 50 69 65 | 63 65 43 6f 6c 6f 72 20 |or = Pie|ceColor |
|00001670| 54 48 45 4e 0d 70 75 74 | 20 69 63 6f 6e 20 6f 66 |THEN.put| icon of|
|00001680| 20 62 6b 67 6e 64 20 62 | 74 6e 20 54 61 72 67 65 | bkgnd b|tn Targe|
|00001690| 74 53 71 20 69 6e 74 6f | 20 54 61 72 67 65 74 53 |tSq into| TargetS|
|000016a0| 71 49 63 6f 6e 0d 70 75 | 74 20 43 68 65 73 73 4c |qIcon.pu|t ChessL|
|000016b0| 65 67 61 6c 53 71 75 61 | 72 65 73 58 66 63 6e 28 |egalSqua|resXfcn(|
|000016c0| 50 69 65 63 65 4d 61 70 | 2c 50 6c 61 79 43 6f 6c |PieceMap|,PlayCol|
|000016d0| 6f 72 2c 54 61 72 67 65 | 74 53 71 29 20 69 6e 74 |or,Targe|tSq) int|
|000016e0| 6f 20 c2 0d 53 71 4c 69 | 73 74 0d 2d 2d 70 75 74 |o ..SqLi|st.--put|
|000016f0| 20 53 71 4c 69 73 74 20 | 69 6e 74 6f 20 6d 73 67 | SqList |into msg|
|00001700| 0d 70 75 74 20 28 74 68 | 65 20 6c 65 6e 67 74 68 |.put (th|e length|
|00001710| 20 6f 66 20 53 71 4c 69 | 73 74 29 2f 32 20 69 6e | of SqLi|st)/2 in|
|00001720| 74 6f 20 4e 75 6d 62 65 | 72 4f 66 53 71 75 61 72 |to Numbe|rOfSquar|
|00001730| 65 73 0d 52 65 70 65 61 | 74 20 77 69 74 68 20 53 |es.Repea|t with S|
|00001740| 71 4e 6f 20 3d 20 31 20 | 74 6f 20 4e 75 6d 62 65 |qNo = 1 |to Numbe|
|00001750| 72 4f 66 53 71 75 61 72 | 65 73 0d 70 75 74 20 63 |rOfSquar|es.put c|
|00001760| 68 61 72 20 53 71 4e 6f | 2a 32 2d 31 20 74 6f 20 |har SqNo|*2-1 to |
|00001770| 53 71 4e 6f 2a 32 20 6f | 66 20 53 71 4c 69 73 74 |SqNo*2 o|f SqList|
|00001780| 20 69 6e 74 6f 20 41 72 | 72 69 76 65 53 71 0d 70 | into Ar|riveSq.p|
|00001790| 75 74 20 6f 66 66 73 65 | 74 28 41 72 72 69 76 65 |ut offse|t(Arrive|
|000017a0| 53 71 2c 42 6f 61 72 64 | 53 71 75 61 72 65 73 29 |Sq,Board|Squares)|
|000017b0| 20 69 6e 74 6f 20 53 71 | 49 6e 64 65 78 0d 70 75 | into Sq|Index.pu|
|000017c0| 74 20 63 68 61 72 20 53 | 71 49 6e 64 65 78 20 74 |t char S|qIndex t|
|000017d0| 6f 20 53 71 49 6e 64 65 | 78 2b 31 20 6f 66 20 43 |o SqInde|x+1 of C|
|000017e0| 6f 6c 6f 72 4d 61 70 20 | 69 6e 74 6f 20 41 53 71 |olorMap |into ASq|
|000017f0| 43 6f 6c 6f 72 0d 70 75 | 74 20 69 63 6f 6e 20 6f |Color.pu|t icon o|
|00001800| 66 20 62 6b 67 6e 64 20 | 62 74 6e 20 41 72 72 69 |f bkgnd |btn Arri|
|00001810| 76 65 53 71 20 69 6e 74 | 6f 20 41 72 72 69 76 65 |veSq int|o Arrive|
|00001820| 53 71 49 63 6f 6e 0d 73 | 65 74 20 69 63 6f 6e 20 |SqIcon.s|et icon |
|00001830| 6f 66 20 62 6b 67 6e 64 | 20 62 74 6e 20 54 61 72 |of bkgnd| btn Tar|
|00001840| 67 65 74 53 71 20 74 6f | 20 54 53 71 43 6f 6c 6f |getSq to| TSqColo|
|00001850| 72 0d 70 75 74 20 4d 6f | 76 69 6e 67 50 69 65 63 |r.put Mo|vingPiec|
|00001860| 65 20 26 20 41 53 71 43 | 6f 6c 6f 72 20 69 6e 74 |e & ASqC|olor int|
|00001870| 6f 20 4e 65 77 41 72 72 | 69 76 65 53 71 49 63 6f |o NewArr|iveSqIco|
|00001880| 6e 0d 73 65 74 20 69 63 | 6f 6e 20 6f 66 20 62 6b |n.set ic|on of bk|
|00001890| 67 6e 64 20 62 74 6e 20 | 41 72 72 69 76 65 53 71 |gnd btn |ArriveSq|
|000018a0| 20 74 6f 20 4e 65 77 41 | 72 72 69 76 65 53 71 49 | to NewA|rriveSqI|
|000018b0| 63 6f 6e 0d 77 61 69 74 | 20 39 30 20 74 69 63 6b |con.wait| 90 tick|
|000018c0| 73 0d 73 65 74 20 69 63 | 6f 6e 20 6f 66 20 62 6b |s.set ic|on of bk|
|000018d0| 67 6e 64 20 62 74 6e 20 | 41 72 72 69 76 65 53 71 |gnd btn |ArriveSq|
|000018e0| 20 74 6f 20 41 72 72 69 | 76 65 53 71 49 63 6f 6e | to Arri|veSqIcon|
|000018f0| 0d 73 65 74 20 69 63 6f | 6e 20 6f 66 20 62 6b 67 |.set ico|n of bkg|
|00001900| 6e 64 20 62 74 6e 20 54 | 61 72 67 65 74 53 71 20 |nd btn T|argetSq |
|00001910| 74 6f 20 54 61 72 67 65 | 74 53 71 49 63 6f 6e 0d |to Targe|tSqIcon.|
|00001920| 45 6e 64 20 52 65 70 65 | 61 74 0d 45 6e 64 20 49 |End Repe|at.End I|
|00001930| 66 0d 45 6e 64 20 53 68 | 6f 77 4c 65 67 61 6c 53 |f.End Sh|owLegalS|
|00001940| 71 75 61 72 65 73 46 6f | 72 54 68 69 73 50 69 65 |quaresFo|rThisPie|
|00001950| 63 65 0d 0d 6f 6e 20 45 | 78 74 72 61 63 74 43 6f |ce..on E|xtractCo|
|00001960| 6c 6f 72 46 72 6f 6d 4d | 6f 76 65 50 61 63 6b 65 |lorFromM|ovePacke|
|00001970| 74 0d 47 6c 6f 62 61 6c | 20 52 65 63 65 69 76 65 |t.Global| Receive|
|00001980| 64 43 6f 6c 6f 72 2c 52 | 65 63 65 69 76 65 64 50 |dColor,R|eceivedP|
|00001990| 61 63 6b 65 74 44 61 74 | 61 53 74 72 69 6e 67 0d |acketDat|aString.|
|000019a0| 70 75 74 20 63 68 61 72 | 20 31 20 6f 66 20 52 65 |put char| 1 of Re|
|000019b0| 63 65 69 76 65 64 50 61 | 63 6b 65 74 44 61 74 61 |ceivedPa|cketData|
|000019c0| 53 74 72 69 6e 67 20 69 | 6e 74 6f 20 52 65 63 65 |String i|nto Rece|
|000019d0| 69 76 65 64 43 6f 6c 6f | 72 0d 64 65 6c 65 74 65 |ivedColo|r.delete|
|000019e0| 20 63 68 61 72 20 31 20 | 6f 66 20 52 65 63 65 69 | char 1 |of Recei|
|000019f0| 76 65 64 50 61 63 6b 65 | 74 44 61 74 61 53 74 72 |vedPacke|tDataStr|
|00001a00| 69 6e 67 0d 45 6e 64 20 | 45 78 74 72 61 63 74 43 |ing.End |ExtractC|
|00001a10| 6f 6c 6f 72 46 72 6f 6d | 4d 6f 76 65 50 61 63 6b |olorFrom|MovePack|
|00001a20| 65 74 0d 0d 6f 6e 20 43 | 68 65 63 6b 4f 70 70 6f |et..on C|heckOppo|
|00001a30| 6e 65 6e 74 43 6f 6c 6f | 72 41 6e 64 53 61 76 65 |nentColo|rAndSave|
|00001a40| 4d 6f 76 65 0d 47 6c 6f | 62 61 6c 20 50 6c 61 79 |Move.Glo|bal Play|
|00001a50| 43 6f 6c 6f 72 2c 50 6c | 61 79 4d 6f 64 65 2c 4d |Color,Pl|ayMode,M|
|00001a60| 41 43 74 6f 4d 41 43 2c | 52 65 63 65 69 76 65 64 |ACtoMAC,|Received|
|00001a70| 50 61 63 6b 65 74 44 61 | 74 61 53 74 72 69 6e 67 |PacketDa|taString|
|00001a80| 0d 47 6c 6f 62 61 6c 20 | 52 65 63 65 69 76 65 64 |.Global |Received|
|00001a90| 43 6f 6c 6f 72 2c 42 65 | 65 70 46 6c 61 67 2c 57 |Color,Be|epFlag,W|
|00001aa0| 61 74 63 68 46 6c 61 67 | 0d 49 46 20 28 63 68 61 |atchFlag|.IF (cha|
|00001ab0| 72 20 31 20 6f 66 20 50 | 6c 61 79 43 6f 6c 6f 72 |r 1 of P|layColor|
|00001ac0| 20 3d 20 52 65 63 65 69 | 76 65 64 43 6f 6c 6f 72 | = Recei|vedColor|
|00001ad0| 29 20 41 4e 44 20 28 57 | 61 74 63 68 46 6c 61 67 |) AND (W|atchFlag|
|00001ae0| 20 69 73 20 46 61 6c 73 | 65 29 20 54 48 45 4e 0d | is Fals|e) THEN.|
|00001af0| 62 65 65 70 20 32 0d 70 | 75 74 20 22 45 52 52 4f |beep 2.p|ut "ERRO|
|00001b00| 52 20 3a 20 42 6f 74 68 | 20 73 69 64 65 73 20 61 |R : Both| sides a|
|00001b10| 72 65 20 70 6c 61 79 69 | 6e 67 20 22 20 26 20 50 |re playi|ng " & P|
|00001b20| 6c 61 79 43 6f 6c 6f 72 | 20 26 20 22 20 21 22 20 |layColor| & " !" |
|00001b30| 69 6e 74 6f 20 c2 0d 43 | 6f 6c 6f 72 44 69 61 6c |into ..C|olorDial|
|00001b40| 6f 67 0d 41 6e 73 77 65 | 72 20 43 6f 6c 6f 72 44 |og.Answe|r ColorD|
|00001b50| 69 61 6c 6f 67 0d 45 4c | 53 45 0d 53 61 76 65 4d |ialog.EL|SE.SaveM|
|00001b60| 6f 76 65 49 6e 47 61 6d | 65 53 63 6f 72 65 20 52 |oveInGam|eScore R|
|00001b70| 65 63 65 69 76 65 64 50 | 61 63 6b 65 74 44 61 74 |eceivedP|acketDat|
|00001b80| 61 53 74 72 69 6e 67 0d | 49 46 20 6c 61 73 74 20 |aString.|IF last |
|00001b90| 63 68 61 72 20 6f 66 20 | 52 65 63 65 69 76 65 64 |char of |Received|
|00001ba0| 50 61 63 6b 65 74 44 61 | 74 61 53 74 72 69 6e 67 |PacketDa|taString|
|00001bb0| 20 3d 20 22 2b 22 20 54 | 48 45 4e 0d 49 46 20 42 | = "+" T|HEN.IF B|
|00001bc0| 65 65 70 46 6c 61 67 20 | 54 48 45 4e 20 62 65 65 |eepFlag |THEN bee|
|00001bd0| 70 0d 41 6e 73 77 65 72 | 20 22 42 65 20 63 61 72 |p.Answer| "Be car|
|00001be0| 65 66 75 6c 21 20 20 59 | 6f 75 20 61 72 65 20 6e |eful! Y|ou are n|
|00001bf0| 6f 77 20 69 6e 20 63 68 | 65 63 6b 21 22 20 77 69 |ow in ch|eck!" wi|
|00001c00| 74 68 20 22 4f 4b 22 0d | 45 6e 64 20 49 46 0d 45 |th "OK".|End IF.E|
|00001c10| 6e 64 20 49 46 0d 45 6e | 64 20 43 68 65 63 6b 4f |nd IF.En|d CheckO|
|00001c20| 70 70 6f 6e 65 6e 74 43 | 6f 6c 6f 72 41 6e 64 53 |pponentC|olorAndS|
|00001c30| 61 76 65 4d 6f 76 65 0d | 0d 6f 6e 20 52 65 73 74 |aveMove.|.on Rest|
|00001c40| 6f 72 65 43 75 72 73 6f | 72 0d 47 6c 6f 62 61 6c |oreCurso|r.Global|
|00001c50| 20 68 6f 72 7a 6c 65 66 | 74 2c 68 6f 72 7a 72 69 | horzlef|t,horzri|
|00001c60| 67 68 74 2c 76 65 72 74 | 74 6f 70 2c 76 65 72 74 |ght,vert|top,vert|
|00001c70| 62 6f 74 74 6f 6d 2c 68 | 6f 72 7a 63 6c 69 63 6b |bottom,h|orzclick|
|00001c80| 2c 76 65 72 74 63 6c 69 | 63 6b 0d 70 75 74 20 69 |,vertcli|ck.put i|
|00001c90| 74 65 6d 20 31 20 6f 66 | 20 74 68 65 20 63 6c 69 |tem 1 of| the cli|
|00001ca0| 63 6b 6c 6f 63 20 69 6e | 74 6f 20 68 6f 72 7a 6c |ckloc in|to horzl|
|00001cb0| 6f 63 0d 70 75 74 20 69 | 74 65 6d 20 32 20 6f 66 |oc.put i|tem 2 of|
|00001cc0| 20 74 68 65 20 63 6c 69 | 63 6b 6c 6f 63 20 69 6e | the cli|ckloc in|
|00001cd0| 74 6f 20 76 65 72 74 6c | 6f 63 0d 49 46 20 28 68 |to vertl|oc.IF (h|
|00001ce0| 6f 72 7a 6c 6f 63 20 3e | 20 68 6f 72 7a 6c 65 66 |orzloc >| horzlef|
|00001cf0| 74 29 20 41 4e 44 20 28 | 68 6f 72 7a 6c 6f 63 20 |t) AND (|horzloc |
|00001d00| 3c 20 68 6f 72 7a 72 69 | 67 68 74 29 20 41 4e 44 |< horzri|ght) AND|
|00001d10| 20 c2 0d 28 76 65 72 74 | 6c 6f 63 20 3e 20 76 65 | ..(vert|loc > ve|
|00001d20| 72 74 74 6f 70 29 20 41 | 4e 44 20 28 76 65 72 74 |rttop) A|ND (vert|
|00001d30| 6c 6f 63 20 3c 20 76 65 | 72 74 62 6f 74 74 6f 6d |loc < ve|rtbottom|
|00001d40| 29 20 54 48 45 4e 0d 63 | 6c 69 63 6b 20 61 74 20 |) THEN.c|lick at |
|00001d50| 68 6f 72 7a 63 6c 69 63 | 6b 2c 76 65 72 74 63 6c |horzclic|k,vertcl|
|00001d60| 69 63 6b 0d 45 6e 64 20 | 49 46 0d 45 6e 64 20 52 |ick.End |IF.End R|
|00001d70| 65 73 74 6f 72 65 43 75 | 72 73 6f 72 0d 0d 6f 6e |estoreCu|rsor..on|
|00001d80| 20 52 65 6c 6f 63 61 74 | 65 54 68 65 42 6f 61 72 | Relocat|eTheBoar|
|00001d90| 64 53 71 75 61 72 65 73 | 0d 47 6c 6f 62 61 6c 20 |dSquares|.Global |
|00001da0| 50 6c 61 79 43 6f 6c 6f | 72 0d 2d 2d 20 61 31 20 |PlayColo|r.-- a1 |
|00001db0| 3d 20 28 20 31 37 2c 32 | 36 35 2c 20 34 39 2c 32 |= ( 17,2|65, 49,2|
|00001dc0| 39 37 29 20 2c 20 20 62 | 31 20 3d 20 28 20 34 38 |97) , b|1 = ( 48|
|00001dd0| 2c 32 36 35 2c 20 38 30 | 2c 32 39 37 29 0d 2d 2d |,265, 80|,297).--|
|00001de0| 20 67 31 20 3d 20 28 32 | 30 33 2c 32 36 35 2c 32 | g1 = (2|03,265,2|
|00001df0| 33 35 2c 32 39 37 29 20 | 2c 20 20 68 31 20 3d 20 |35,297) |, h1 = |
|00001e00| 28 32 33 34 2c 32 36 35 | 2c 32 36 36 2c 32 39 37 |(234,265|,266,297|
|00001e10| 29 0d 2d 2d 20 61 38 20 | 3d 20 28 20 31 37 2c 20 |).-- a8 |= ( 17, |
|00001e20| 34 38 2c 20 34 39 2c 20 | 38 30 29 20 2c 20 20 62 |48, 49, |80) , b|
|00001e30| 38 20 3d 20 28 20 34 38 | 2c 20 34 38 2c 20 38 30 |8 = ( 48|, 48, 80|
|00001e40| 2c 20 38 30 29 0d 2d 2d | 20 67 38 20 3d 20 28 32 |, 80).--| g8 = (2|
|00001e50| 30 33 2c 20 34 38 2c 32 | 33 35 2c 20 38 30 29 20 |03, 48,2|35, 80) |
|00001e60| 2c 20 20 68 38 20 3d 20 | 28 32 33 34 2c 20 34 38 |, h8 = |(234, 48|
|00001e70| 2c 32 36 36 2c 20 38 30 | 29 0d 70 75 74 20 22 57 |,266, 80|).put "W|
|00001e80| 48 49 54 45 22 20 69 6e | 74 6f 20 66 69 65 6c 64 |HITE" in|to field|
|00001e90| 20 22 43 6f 6c 6f 72 22 | 0d 70 75 74 20 22 57 48 | "Color"|.put "WH|
|00001ea0| 49 54 45 22 20 69 6e 74 | 6f 20 50 6c 61 79 43 6f |ITE" int|o PlayCo|
|00001eb0| 6c 6f 72 0d 52 65 70 65 | 61 74 20 77 69 74 68 20 |lor.Repe|at with |
|00001ec0| 78 20 3d 20 31 20 74 6f | 20 38 0d 52 65 70 65 61 |x = 1 to| 8.Repea|
|00001ed0| 74 20 77 69 74 68 20 79 | 20 3d 20 39 37 20 74 6f |t with y| = 97 to|
|00001ee0| 20 31 30 34 0d 70 75 74 | 20 28 74 68 65 20 6e 75 | 104.put| (the nu|
|00001ef0| 6d 54 6f 43 68 61 72 20 | 6f 66 20 79 29 20 26 20 |mToChar |of y) & |
|00001f00| 78 20 69 6e 74 6f 20 42 | 6f 61 72 64 53 71 75 61 |x into B|oardSqua|
|00001f10| 72 65 0d 70 75 74 20 28 | 79 2d 39 37 29 2a 33 31 |re.put (|y-97)*31|
|00001f20| 20 2b 20 31 37 20 69 6e | 74 6f 20 55 4c 48 0d 70 | + 17 in|to ULH.p|
|00001f30| 75 74 20 32 39 36 20 2d | 20 28 78 2a 33 31 29 20 |ut 296 -| (x*31) |
|00001f40| 69 6e 74 6f 20 55 4c 56 | 0d 70 75 74 20 55 4c 48 |into ULV|.put ULH|
|00001f50| 20 2b 20 33 32 20 69 6e | 74 6f 20 4c 52 48 0d 70 | + 32 in|to LRH.p|
|00001f60| 75 74 20 55 4c 56 20 2b | 20 33 32 20 69 6e 74 6f |ut ULV +| 32 into|
|00001f70| 20 4c 52 56 0d 70 75 74 | 20 55 4c 48 20 26 20 22 | LRV.put| ULH & "|
|00001f80| 2c 22 20 26 20 55 4c 56 | 20 26 20 22 2c 22 20 26 |," & ULV| & "," &|
|00001f90| 20 4c 52 48 20 26 20 22 | 2c 22 20 26 20 4c 52 56 | LRH & "|," & LRV|
|00001fa0| 20 69 6e 74 6f 20 53 71 | 75 61 72 65 52 65 63 74 | into Sq|uareRect|
|00001fb0| 0d 70 75 74 20 22 2e 2e | 2e 6e 6f 77 20 72 65 6c |.put "..|.now rel|
|00001fc0| 6f 63 61 74 69 6e 67 20 | 73 71 75 61 72 65 20 22 |ocating |square "|
|00001fd0| 20 26 20 42 6f 61 72 64 | 53 71 75 61 72 65 20 69 | & Board|Square i|
|00001fe0| 6e 74 6f 20 6d 73 67 0d | 77 61 69 74 20 66 6f 72 |nto msg.|wait for|
|00001ff0| 20 31 35 20 74 69 63 6b | 73 0d 73 65 74 20 74 68 | 15 tick|s.set th|
|00002000| 65 20 72 65 63 74 20 6f | 66 20 62 61 63 6b 67 72 |e rect o|f backgr|
|00002010| 6f 75 6e 64 20 62 75 74 | 74 6f 6e 20 42 6f 61 72 |ound but|ton Boar|
|00002020| 64 53 71 75 61 72 65 20 | 74 6f 20 53 71 75 61 72 |dSquare |to Squar|
|00002030| 65 52 65 63 74 0d 45 6e | 64 20 52 65 70 65 61 74 |eRect.En|d Repeat|
|00002040| 0d 45 6e 64 20 52 65 70 | 65 61 74 0d 70 75 74 20 |.End Rep|eat.put |
|00002050| 22 2e 2e 2e 64 6f 6e 65 | 22 20 69 6e 74 6f 20 6d |"...done|" into m|
|00002060| 73 67 0d 77 61 69 74 20 | 66 6f 72 20 33 30 20 74 |sg.wait |for 30 t|
|00002070| 69 63 6b 73 0d 70 75 74 | 20 65 6d 70 74 79 20 69 |icks.put| empty i|
|00002080| 6e 74 6f 20 6d 73 67 0d | 68 69 64 65 20 6d 73 67 |nto msg.|hide msg|
|00002090| 0d 45 6e 64 20 52 65 6c | 6f 63 61 74 65 54 68 65 |.End Rel|ocateThe|
|000020a0| 42 6f 61 72 64 53 71 75 | 61 72 65 73 0d 0d 6f 6e |BoardSqu|ares..on|
|000020b0| 20 52 6f 74 61 74 65 54 | 68 65 42 6f 61 72 64 0d | RotateT|heBoard.|
|000020c0| 50 75 74 20 c2 0d 22 61 | 31 62 31 63 31 64 31 65 |Put .."a|1b1c1d1e|
|000020d0| 31 66 31 67 31 68 31 61 | 32 62 32 63 32 64 32 65 |1f1g1h1a|2b2c2d2e|
|000020e0| 32 66 32 67 32 68 32 61 | 33 62 33 63 33 64 33 65 |2f2g2h2a|3b3c3d3e|
|000020f0| 33 66 33 67 33 68 33 61 | 34 62 34 63 34 64 34 65 |3f3g3h3a|4b4c4d4e|
|00002100| 34 66 34 67 34 68 34 22 | c2 0d 69 6e 74 6f 20 46 |4f4g4h4"|..into F|
|00002110| 6f 72 77 61 72 64 53 71 | 75 61 72 65 73 0d 50 75 |orwardSq|uares.Pu|
|00002120| 74 20 c2 0d 22 68 38 67 | 38 66 38 65 38 64 38 63 |t .."h8g|8f8e8d8c|
|00002130| 38 62 38 61 38 68 37 67 | 37 66 37 65 37 64 37 63 |8b8a8h7g|7f7e7d7c|
|00002140| 37 62 37 61 37 68 36 67 | 36 66 36 65 36 64 36 63 |7b7a7h6g|6f6e6d6c|
|00002150| 36 62 36 61 36 68 35 67 | 35 66 35 65 35 64 35 63 |6b6a6h5g|5f5e5d5c|
|00002160| 35 62 35 61 35 22 c2 0d | 69 6e 74 6f 20 42 61 63 |5b5a5"..|into Bac|
|00002170| 6b 77 61 72 64 53 71 75 | 61 72 65 73 0d 52 45 50 |kwardSqu|ares.REP|
|00002180| 45 41 54 20 77 69 74 68 | 20 53 71 75 61 72 65 20 |EAT with| Square |
|00002190| 3d 20 31 20 74 6f 20 33 | 32 0d 50 75 74 20 43 68 |= 1 to 3|2.Put Ch|
|000021a0| 61 72 20 53 71 75 61 72 | 65 2a 32 2d 31 20 74 6f |ar Squar|e*2-1 to|
|000021b0| 20 53 71 75 61 72 65 2a | 32 20 4f 66 20 42 61 63 | Square*|2 Of Bac|
|000021c0| 6b 77 61 72 64 53 71 75 | 61 72 65 73 20 69 6e 74 |kwardSqu|ares int|
|000021d0| 6f 20 53 71 75 61 72 65 | 31 0d 50 75 74 20 43 68 |o Square|1.Put Ch|
|000021e0| 61 72 20 53 71 75 61 72 | 65 2a 32 2d 31 20 74 6f |ar Squar|e*2-1 to|
|000021f0| 20 53 71 75 61 72 65 2a | 32 20 4f 66 20 46 6f 72 | Square*|2 Of For|
|00002200| 77 61 72 64 53 71 75 61 | 72 65 73 20 69 6e 74 6f |wardSqua|res into|
|00002210| 20 53 71 75 61 72 65 32 | 0d 50 75 74 20 74 68 65 | Square2|.Put the|
|00002220| 20 72 65 63 74 20 6f 66 | 20 62 61 63 6b 67 72 6f | rect of| backgro|
|00002230| 75 6e 64 20 62 75 74 74 | 6f 6e 20 53 71 75 61 72 |und butt|on Squar|
|00002240| 65 31 20 69 6e 74 6f 20 | 52 65 63 74 53 71 75 61 |e1 into |RectSqua|
|00002250| 72 65 31 0d 50 75 74 20 | 74 68 65 20 72 65 63 74 |re1.Put |the rect|
|00002260| 20 6f 66 20 62 61 63 6b | 67 72 6f 75 6e 64 20 62 | of back|ground b|
|00002270| 75 74 74 6f 6e 20 53 71 | 75 61 72 65 32 20 69 6e |utton Sq|uare2 in|
|00002280| 74 6f 20 52 65 63 74 53 | 71 75 61 72 65 32 0d 53 |to RectS|quare2.S|
|00002290| 65 74 20 74 68 65 20 72 | 65 63 74 20 6f 66 20 62 |et the r|ect of b|
|000022a0| 61 63 6b 67 72 6f 75 6e | 64 20 62 75 74 74 6f 6e |ackgroun|d button|
|000022b0| 20 53 71 75 61 72 65 31 | 20 74 6f 20 52 65 63 74 | Square1| to Rect|
|000022c0| 53 71 75 61 72 65 32 0d | 53 65 74 20 74 68 65 20 |Square2.|Set the |
|000022d0| 72 65 63 74 20 6f 66 20 | 62 61 63 6b 67 72 6f 75 |rect of |backgrou|
|000022e0| 6e 64 20 62 75 74 74 6f | 6e 20 53 71 75 61 72 65 |nd butto|n Square|
|000022f0| 32 20 74 6f 20 52 65 63 | 74 53 71 75 61 72 65 31 |2 to Rec|tSquare1|
|00002300| 0d 45 4e 44 20 52 45 50 | 45 41 54 0d 45 6e 64 20 |.END REP|EAT.End |
|00002310| 52 6f 74 61 74 65 54 68 | 65 42 6f 61 72 64 0d 0d |RotateTh|eBoard..|
|00002320| 6f 6e 20 41 63 63 65 70 | 74 53 71 75 61 72 65 45 |on Accep|tSquareE|
|00002330| 64 69 74 0d 47 6c 6f 62 | 61 6c 20 42 75 74 74 6f |dit.Glob|al Butto|
|00002340| 6e 53 71 75 61 72 65 2c | 45 64 69 74 50 69 65 63 |nSquare,|EditPiec|
|00002350| 65 2c 42 6f 61 72 64 53 | 71 75 61 72 65 73 2c 43 |e,BoardS|quares,C|
|00002360| 6f 6c 6f 72 4d 61 70 2c | 50 69 65 63 65 4d 61 70 |olorMap,|PieceMap|
|00002370| 0d 47 6c 6f 62 61 6c 20 | 52 65 73 65 74 47 61 6d |.Global |ResetGam|
|00002380| 65 2c 43 6f 6d 6d 61 6e | 64 53 74 61 74 65 0d 49 |e,Comman|dState.I|
|00002390| 46 20 28 45 64 69 74 50 | 69 65 63 65 20 69 73 20 |F (EditP|iece is |
|000023a0| 65 6d 70 74 79 29 20 41 | 4e 44 20 28 43 6f 6d 6d |empty) A|ND (Comm|
|000023b0| 61 6e 64 53 74 61 74 65 | 20 69 73 20 75 70 29 20 |andState| is up) |
|000023c0| 54 48 45 4e 0d 62 65 65 | 70 0d 65 78 69 74 20 41 |THEN.bee|p.exit A|
|000023d0| 63 63 65 70 74 53 71 75 | 61 72 65 45 64 69 74 0d |cceptSqu|areEdit.|
|000023e0| 45 6e 64 20 49 46 0d 70 | 75 74 20 66 61 6c 73 65 |End IF.p|ut false|
|000023f0| 20 69 6e 74 6f 20 52 65 | 73 65 74 47 61 6d 65 0d | into Re|setGame.|
|00002400| 49 46 20 43 6f 6d 6d 61 | 6e 64 53 74 61 74 65 20 |IF Comma|ndState |
|00002410| 69 73 20 44 4f 57 4e 20 | 54 48 45 4e 20 70 75 74 |is DOWN |THEN put|
|00002420| 20 22 55 53 22 20 69 6e | 74 6f 20 45 64 69 74 50 | "US" in|to EditP|
|00002430| 69 65 63 65 0d 70 75 74 | 20 6f 66 66 73 65 74 28 |iece.put| offset(|
|00002440| 42 75 74 74 6f 6e 53 71 | 75 61 72 65 2c 42 6f 61 |ButtonSq|uare,Boa|
|00002450| 72 64 53 71 75 61 72 65 | 73 29 20 69 6e 74 6f 20 |rdSquare|s) into |
|00002460| 53 71 75 61 72 65 49 6e | 64 65 78 0d 70 75 74 20 |SquareIn|dex.put |
|00002470| 63 68 61 72 20 53 71 75 | 61 72 65 49 6e 64 65 78 |char Squ|areIndex|
|00002480| 20 74 6f 20 53 71 75 61 | 72 65 49 6e 64 65 78 2b | to Squa|reIndex+|
|00002490| 31 20 6f 66 20 43 6f 6c | 6f 72 4d 61 70 20 69 6e |1 of Col|orMap in|
|000024a0| 74 6f 20 53 71 75 61 72 | 65 43 6f 6c 6f 72 0d 70 |to Squar|eColor.p|
|000024b0| 75 74 20 45 64 69 74 50 | 69 65 63 65 20 69 6e 74 |ut EditP|iece int|
|000024c0| 6f 20 63 68 61 72 20 53 | 71 75 61 72 65 49 6e 64 |o char S|quareInd|
|000024d0| 65 78 20 74 6f 20 53 71 | 75 61 72 65 49 6e 64 65 |ex to Sq|uareInde|
|000024e0| 78 2b 31 20 6f 66 20 50 | 69 65 63 65 4d 61 70 0d |x+1 of P|ieceMap.|
|000024f0| 70 75 74 20 45 64 69 74 | 50 69 65 63 65 20 26 20 |put Edit|Piece & |
|00002500| 53 71 75 61 72 65 43 6f | 6c 6f 72 20 69 6e 74 6f |SquareCo|lor into|
|00002510| 20 53 71 75 61 72 65 49 | 63 6f 6e 0d 49 46 20 45 | SquareI|con.IF E|
|00002520| 64 69 74 50 69 65 63 65 | 20 3d 20 22 55 53 22 20 |ditPiece| = "US" |
|00002530| 54 48 45 4e 0d 73 65 74 | 20 74 68 65 20 69 63 6f |THEN.set| the ico|
|00002540| 6e 20 6f 66 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |n of bac|kground |
|00002550| 62 75 74 74 6f 6e 20 42 | 75 74 74 6f 6e 53 71 75 |button B|uttonSqu|
|00002560| 61 72 65 20 74 6f 20 30 | 0d 70 75 74 20 65 6d 70 |are to 0|.put emp|
|00002570| 74 79 20 69 6e 74 6f 20 | 45 64 69 74 50 69 65 63 |ty into |EditPiec|
|00002580| 65 0d 45 4c 53 45 0d 73 | 65 74 20 74 68 65 20 69 |e.ELSE.s|et the i|
|00002590| 63 6f 6e 20 6f 66 20 62 | 61 63 6b 67 72 6f 75 6e |con of b|ackgroun|
|000025a0| 64 20 62 75 74 74 6f 6e | 20 42 75 74 74 6f 6e 53 |d button| ButtonS|
|000025b0| 71 75 61 72 65 20 74 6f | 20 53 71 75 61 72 65 49 |quare to| SquareI|
|000025c0| 63 6f 6e 0d 45 6e 64 20 | 49 46 0d 45 6e 64 20 41 |con.End |IF.End A|
|000025d0| 63 63 65 70 74 53 71 75 | 61 72 65 45 64 69 74 0d |cceptSqu|areEdit.|
|000025e0| 0d 6f 6e 20 48 69 64 65 | 54 68 65 45 64 69 74 50 |.on Hide|TheEditP|
|000025f0| 69 65 63 65 73 0d 73 68 | 6f 77 20 66 69 65 6c 64 |ieces.sh|ow field|
|00002600| 20 22 4f 70 70 6f 6e 65 | 6e 74 22 0d 68 69 64 65 | "Oppone|nt".hide|
|00002610| 20 62 61 63 6b 67 72 6f | 75 6e 64 20 62 75 74 74 | backgro|und butt|
|00002620| 6f 6e 20 22 42 50 22 0d | 68 69 64 65 20 62 61 63 |on "BP".|hide bac|
|00002630| 6b 67 72 6f 75 6e 64 20 | 62 75 74 74 6f 6e 20 22 |kground |button "|
|00002640| 42 4e 22 0d 68 69 64 65 | 20 62 61 63 6b 67 72 6f |BN".hide| backgro|
|00002650| 75 6e 64 20 62 75 74 74 | 6f 6e 20 22 42 42 22 0d |und butt|on "BB".|
|00002660| 68 69 64 65 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |hide bac|kground |
|00002670| 62 75 74 74 6f 6e 20 22 | 42 52 22 0d 68 69 64 65 |button "|BR".hide|
|00002680| 20 62 61 63 6b 67 72 6f | 75 6e 64 20 62 75 74 74 | backgro|und butt|
|00002690| 6f 6e 20 22 42 51 22 0d | 68 69 64 65 20 62 61 63 |on "BQ".|hide bac|
|000026a0| 6b 67 72 6f 75 6e 64 20 | 62 75 74 74 6f 6e 20 22 |kground |button "|
|000026b0| 42 4b 22 0d 68 69 64 65 | 20 62 61 63 6b 67 72 6f |BK".hide| backgro|
|000026c0| 75 6e 64 20 62 75 74 74 | 6f 6e 20 22 57 50 22 0d |und butt|on "WP".|
|000026d0| 68 69 64 65 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |hide bac|kground |
|000026e0| 62 75 74 74 6f 6e 20 22 | 57 4e 22 0d 68 69 64 65 |button "|WN".hide|
|000026f0| 20 62 61 63 6b 67 72 6f | 75 6e 64 20 62 75 74 74 | backgro|und butt|
|00002700| 6f 6e 20 22 57 42 22 0d | 68 69 64 65 20 62 61 63 |on "WB".|hide bac|
|00002710| 6b 67 72 6f 75 6e 64 20 | 62 75 74 74 6f 6e 20 22 |kground |button "|
|00002720| 57 52 22 0d 68 69 64 65 | 20 62 61 63 6b 67 72 6f |WR".hide| backgro|
|00002730| 75 6e 64 20 62 75 74 74 | 6f 6e 20 22 57 51 22 0d |und butt|on "WQ".|
|00002740| 68 69 64 65 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |hide bac|kground |
|00002750| 62 75 74 74 6f 6e 20 22 | 57 4b 22 0d 45 6e 64 20 |button "|WK".End |
|00002760| 48 69 64 65 54 68 65 45 | 64 69 74 50 69 65 63 65 |HideTheE|ditPiece|
|00002770| 73 0d 0d 6f 6e 20 54 72 | 61 6e 73 6d 69 74 45 6e |s..on Tr|ansmitEn|
|00002780| 74 69 72 65 42 6f 61 72 | 64 0d 47 6c 6f 62 61 6c |tireBoar|d.Global|
|00002790| 20 50 61 63 6b 65 64 42 | 6f 61 72 64 2c 41 43 4b | PackedB|oard,ACK|
|000027a0| 46 4c 61 67 2c 53 74 61 | 72 74 69 6e 67 54 72 61 |FLag,Sta|rtingTra|
|000027b0| 6e 73 6d 69 73 73 69 6f | 6e 54 69 6d 65 0d 47 6c |nsmissio|nTime.Gl|
|000027c0| 6f 62 61 6c 20 54 68 65 | 50 61 63 6b 65 74 2c 50 |obal The|Packet,P|
|000027d0| 61 63 6b 65 74 54 6f 52 | 65 73 65 6e 64 2c 4d 6f |acketToR|esend,Mo|
|000027e0| 76 65 4c 6f 63 6b 65 64 | 46 6c 61 67 2c 50 69 65 |veLocked|Flag,Pie|
|000027f0| 63 65 4d 61 70 0d 0d 70 | 75 74 20 50 61 63 6b 54 |ceMap..p|ut PackT|
|00002800| 68 65 42 6f 61 72 64 58 | 66 63 6e 50 28 50 69 65 |heBoardX|fcnP(Pie|
|00002810| 63 65 4d 61 70 29 20 69 | 6e 74 6f 20 50 61 63 6b |ceMap) i|nto Pack|
|00002820| 65 64 42 6f 61 72 64 0d | 70 75 74 20 65 6d 70 74 |edBoard.|put empt|
|00002830| 79 20 69 6e 74 6f 20 53 | 65 71 4e 75 6d 0d 70 75 |y into S|eqNum.pu|
|00002840| 74 20 22 42 22 20 69 6e | 74 6f 20 50 61 63 6b 65 |t "B" in|to Packe|
|00002850| 74 54 79 70 65 0d 42 75 | 69 6c 64 41 50 61 63 6b |tType.Bu|ildAPack|
|00002860| 65 74 20 53 65 71 4e 75 | 6d 2c 50 61 63 6b 65 74 |et SeqNu|m,Packet|
|00002870| 54 79 70 65 2c 50 61 63 | 6b 65 64 42 6f 61 72 64 |Type,Pac|kedBoard|
|00002880| 0d 70 75 74 20 54 68 65 | 50 61 63 6b 65 74 20 69 |.put The|Packet i|
|00002890| 6e 74 6f 20 50 61 63 6b | 65 74 54 6f 52 65 73 65 |nto Pack|etToRese|
|000028a0| 6e 64 0d 70 75 74 20 22 | 48 4e 43 20 2d 20 73 65 |nd.put "|HNC - se|
|000028b0| 6e 64 69 6e 67 20 65 6e | 74 69 72 65 20 62 6f 61 |nding en|tire boa|
|000028c0| 72 64 20 70 6f 73 69 74 | 69 6f 6e 20 74 6f 20 6f |rd posit|ion to o|
|000028d0| 70 70 6f 6e 65 6e 74 21 | 22 20 69 6e 74 6f 20 c2 |pponent!|" into .|
|000028e0| 0d 66 69 65 6c 64 20 22 | 4d 65 73 73 61 67 65 20 |.field "|Message |
|000028f0| 4f 75 74 22 0d 73 65 74 | 20 74 68 65 20 6c 6f 63 |Out".set| the loc|
|00002900| 6b 74 65 78 74 20 6f 66 | 20 66 69 65 6c 64 20 22 |ktext of| field "|
|00002910| 4d 65 73 73 61 67 65 20 | 4f 75 74 22 20 74 6f 20 |Message |Out" to |
|00002920| 74 72 75 65 0d 70 75 74 | 20 74 72 75 65 20 69 6e |true.put| true in|
|00002930| 74 6f 20 4d 6f 76 65 4c | 6f 63 6b 65 64 46 6c 61 |to MoveL|ockedFla|
|00002940| 67 0d 70 75 74 20 74 68 | 65 20 73 65 63 6f 6e 64 |g.put th|e second|
|00002950| 73 20 69 6e 74 6f 20 53 | 74 61 72 74 69 6e 67 54 |s into S|tartingT|
|00002960| 72 61 6e 73 6d 69 73 73 | 69 6f 6e 54 69 6d 65 0d |ransmiss|ionTime.|
|00002970| 70 75 74 20 66 61 6c 73 | 65 20 69 6e 74 6f 20 41 |put fals|e into A|
|00002980| 43 4b 46 6c 61 67 0d 53 | 65 6e 64 52 6f 75 74 69 |CKFlag.S|endRouti|
|00002990| 6e 65 20 54 68 65 50 61 | 63 6b 65 74 0d 45 6e 64 |ne ThePa|cket.End|
|000029a0| 20 54 72 61 6e 73 6d 69 | 74 45 6e 74 69 72 65 42 | Transmi|tEntireB|
|000029b0| 6f 61 72 64 0d 0d 6f 6e | 20 67 73 0d 67 65 74 20 |oard..on| gs.get |
|000029c0| 74 68 65 20 76 69 73 69 | 62 6c 65 20 6f 66 20 62 |the visi|ble of b|
|000029d0| 6b 67 6e 64 20 62 74 6e | 20 22 67 61 6d 65 73 63 |kgnd btn| "gamesc|
|000029e0| 6f 72 65 22 0d 49 46 20 | 49 74 20 69 73 20 74 72 |ore".IF |It is tr|
|000029f0| 75 65 20 54 48 45 4e 0d | 68 69 64 65 20 62 6b 67 |ue THEN.|hide bkg|
|00002a00| 6e 64 20 62 74 6e 20 22 | 67 61 6d 65 73 63 6f 72 |nd btn "|gamescor|
|00002a10| 65 22 0d 45 4c 53 45 0d | 73 68 6f 77 20 62 6b 67 |e".ELSE.|show bkg|
|00002a20| 6e 64 20 62 74 6e 20 22 | 67 61 6d 65 73 63 6f 72 |nd btn "|gamescor|
|00002a30| 65 22 0d 45 4e 44 20 49 | 46 0d 45 6e 64 20 67 73 |e".END I|F.End gs|
|00002a40| 0d 0d 6f 6e 20 50 72 6f | 63 65 73 73 57 61 74 63 |..on Pro|cessWatc|
|00002a50| 68 65 72 50 61 63 6b 65 | 74 0d 67 6c 6f 62 61 6c |herPacke|t.global|
|00002a60| 20 67 6c 6f 62 61 6c 41 | 54 50 44 61 74 61 2c 20 | globalA|TPData, |
|00002a70| 67 6c 6f 62 61 6c 52 65 | 73 70 6f 6e 73 65 44 61 |globalRe|sponseDa|
|00002a80| 74 61 0d 67 6c 6f 62 61 | 6c 20 67 6c 6f 62 61 6c |ta.globa|l global|
|00002a90| 52 65 63 65 69 76 65 44 | 61 74 61 2c 20 20 6d 79 |ReceiveD|ata, my|
|00002aa0| 45 6e 74 69 74 79 4e 61 | 6d 65 0d 67 6c 6f 62 61 |EntityNa|me.globa|
|00002ab0| 6c 20 67 6c 6f 62 61 6c | 53 4b 54 44 61 74 61 2c |l global|SKTData,|
|00002ac0| 20 67 6c 6f 62 61 6c 4e | 42 50 44 61 74 61 0d 47 | globalN|BPData.G|
|00002ad0| 6c 6f 62 61 6c 20 54 68 | 65 50 61 63 6b 65 74 2c |lobal Th|ePacket,|
|00002ae0| 41 43 4b 54 79 70 65 2c | 41 43 4b 53 74 72 69 6e |ACKType,|ACKStrin|
|00002af0| 67 2c 4e 41 43 4b 53 74 | 72 69 6e 67 0d 47 6c 6f |g,NACKSt|ring.Glo|
|00002b00| 62 61 6c 20 52 65 63 65 | 69 76 65 64 50 61 63 6b |bal Rece|ivedPack|
|00002b10| 65 74 44 61 74 61 53 74 | 72 69 6e 67 2c 52 65 63 |etDataSt|ring,Rec|
|00002b20| 65 69 76 65 64 50 61 63 | 6b 65 74 53 65 71 75 65 |eivedPac|ketSeque|
|00002b30| 6e 63 65 4e 75 6d 62 65 | 72 0d 47 6c 6f 62 61 6c |nceNumbe|r.Global|
|00002b40| 20 57 61 74 63 68 65 72 | 41 6e 73 77 65 72 0d 0d | Watcher|Answer..|
|00002b50| 70 75 74 20 6f 66 66 73 | 65 74 28 22 3a 3a 22 2c |put offs|et("::",|
|00002b60| 52 65 63 65 69 76 65 64 | 50 61 63 6b 65 74 44 61 |Received|PacketDa|
|00002b70| 74 61 53 74 72 69 6e 67 | 29 20 69 6e 74 6f 20 44 |taString|) into D|
|00002b80| 62 43 0d 70 75 74 20 6f | 66 66 73 65 74 28 22 72 |bC.put o|ffset("r|
|00002b90| 65 71 75 65 73 74 69 6e | 67 20 75 70 64 61 74 65 |equestin|g update|
|00002ba0| 22 2c 52 65 63 65 69 76 | 65 64 50 61 63 6b 65 74 |",Receiv|edPacket|
|00002bb0| 44 61 74 61 53 74 72 69 | 6e 67 29 20 69 6e 74 6f |DataStri|ng) into|
|00002bc0| 20 47 6d 55 70 64 0d 49 | 46 20 44 62 43 20 3e 20 | GmUpd.I|F DbC > |
|00002bd0| 30 20 54 48 45 4e 0d 70 | 75 74 20 63 68 61 72 20 |0 THEN.p|ut char |
|00002be0| 31 20 74 6f 20 28 44 62 | 43 20 2d 20 31 29 20 6f |1 to (Db|C - 1) o|
|00002bf0| 66 20 52 65 63 65 69 76 | 65 64 50 61 63 6b 65 74 |f Receiv|edPacket|
|00002c00| 44 61 74 61 53 74 72 69 | 6e 67 20 69 6e 74 6f 20 |DataStri|ng into |
|00002c10| 57 61 74 63 68 65 72 0d | 70 75 74 20 52 65 63 65 |Watcher.|put Rece|
|00002c20| 69 76 65 64 50 61 63 6b | 65 74 44 61 74 61 53 74 |ivedPack|etDataSt|
|00002c30| 72 69 6e 67 20 69 6e 74 | 6f 20 57 61 74 63 68 4d |ring int|o WatchM|
|00002c40| 73 67 0d 70 75 74 20 57 | 61 74 63 68 4d 73 67 20 |sg.put W|atchMsg |
|00002c50| 69 6e 74 6f 20 66 69 65 | 6c 64 20 22 4d 65 73 73 |into fie|ld "Mess|
|00002c60| 61 67 65 20 49 6e 22 0d | 45 4c 53 45 0d 70 75 74 |age In".|ELSE.put|
|00002c70| 20 52 65 63 65 69 76 65 | 64 50 61 63 6b 65 74 44 | Receive|dPacketD|
|00002c80| 61 74 61 53 74 72 69 6e | 67 20 69 6e 74 6f 20 57 |ataStrin|g into W|
|00002c90| 61 74 63 68 65 72 0d 70 | 75 74 20 22 48 4e 43 20 |atcher.p|ut "HNC |
|00002ca0| 2d 20 57 61 74 63 68 65 | 72 20 73 69 67 6e 6f 6e |- Watche|r signon|
|00002cb0| 20 72 65 71 75 65 73 74 | 20 66 72 6f 6d 20 22 20 | request| from " |
|00002cc0| 26 20 57 61 74 63 68 65 | 72 20 69 6e 74 6f 20 57 |& Watche|r into W|
|00002cd0| 61 74 63 68 4d 73 67 0d | 70 75 74 20 57 61 74 63 |atchMsg.|put Watc|
|00002ce0| 68 4d 73 67 20 69 6e 74 | 6f 20 66 69 65 6c 64 20 |hMsg int|o field |
|00002cf0| 22 4d 65 73 73 61 67 65 | 20 49 6e 22 0d 41 6e 73 |"Message| In".Ans|
|00002d00| 77 65 72 20 22 41 6c 6c | 6f 77 20 22 20 26 20 57 |wer "All|ow " & W|
|00002d10| 61 74 63 68 65 72 20 26 | 20 22 20 74 6f 20 77 61 |atcher &| " to wa|
|00002d20| 74 63 68 3f 22 20 77 69 | 74 68 20 22 4e 4f 22 20 |tch?" wi|th "NO" |
|00002d30| 6f 72 20 22 59 45 53 22 | 0d 70 75 74 20 49 74 20 |or "YES"|.put It |
|00002d40| 69 6e 74 6f 20 57 61 74 | 63 68 65 72 41 6e 73 77 |into Wat|cherAnsw|
|00002d50| 65 72 0d 49 46 20 57 61 | 74 63 68 65 72 41 6e 73 |er.IF Wa|tcherAns|
|00002d60| 77 65 72 20 3d 20 22 59 | 45 53 22 20 54 48 45 4e |wer = "Y|ES" THEN|
|00002d70| 0d 70 75 74 20 28 74 68 | 65 20 6e 75 6d 62 65 72 |.put (th|e number|
|00002d80| 20 6f 66 20 6c 69 6e 65 | 73 20 6f 66 20 66 6c 64 | of line|s of fld|
|00002d90| 20 22 57 61 74 63 68 4c | 69 73 74 22 29 20 2b 20 | "WatchL|ist") + |
|00002da0| 31 20 69 6e 74 6f 20 4e | 65 78 74 49 74 65 6d 0d |1 into N|extItem.|
|00002db0| 70 75 74 20 52 65 63 65 | 69 76 65 64 50 61 63 6b |put Rece|ivedPack|
|00002dc0| 65 74 44 61 74 61 53 74 | 72 69 6e 67 20 69 6e 74 |etDataSt|ring int|
|00002dd0| 6f 20 6c 69 6e 65 20 4e | 65 78 74 49 74 65 6d 20 |o line N|extItem |
|00002de0| 6f 66 20 66 6c 64 20 22 | 57 61 74 63 68 4c 69 73 |of fld "|WatchLis|
|00002df0| 74 22 0d 45 6e 64 20 49 | 46 0d 45 6e 64 20 49 46 |t".End I|F.End IF|
|00002e00| 0d 49 46 20 47 6d 55 70 | 64 20 3d 20 30 20 54 48 |.IF GmUp|d = 0 TH|
|00002e10| 45 4e 0d 49 46 20 57 61 | 74 63 68 65 72 41 6e 73 |EN.IF Wa|tcherAns|
|00002e20| 77 65 72 20 3d 20 22 59 | 45 53 22 20 54 48 45 4e |wer = "Y|ES" THEN|
|00002e30| 0d 70 75 74 20 22 59 22 | 20 69 6e 74 6f 20 50 6b |.put "Y"| into Pk|
|00002e40| 74 54 79 70 65 0d 70 75 | 74 20 41 43 4b 73 74 72 |tType.pu|t ACKstr|
|00002e50| 69 6e 67 20 69 6e 74 6f | 20 57 64 61 74 61 0d 45 |ing into| Wdata.E|
|00002e60| 4c 53 45 0d 70 75 74 20 | 22 4e 22 20 69 6e 74 6f |LSE.put |"N" into|
|00002e70| 20 50 6b 74 54 79 70 65 | 0d 70 75 74 20 4e 41 43 | PktType|.put NAC|
|00002e80| 4b 73 74 72 69 6e 67 20 | 69 6e 74 6f 20 57 64 61 |Kstring |into Wda|
|00002e90| 74 61 0d 45 6e 64 20 49 | 46 0d 42 75 69 6c 64 41 |ta.End I|F.BuildA|
|00002ea0| 50 61 63 6b 65 74 20 52 | 65 63 65 69 76 65 64 50 |Packet R|eceivedP|
|00002eb0| 61 63 6b 65 74 53 65 71 | 75 65 6e 63 65 4e 75 6d |acketSeq|uenceNum|
|00002ec0| 62 65 72 2c 50 6b 74 54 | 79 70 65 2c 57 64 61 74 |ber,PktT|ype,Wdat|
|00002ed0| 61 0d 70 75 74 20 4e 42 | 50 4c 6f 6f 6b 55 70 4e |a.put NB|PLookUpN|
|00002ee0| 61 6d 65 73 28 29 20 69 | 6e 74 6f 20 6e 6f 64 65 |ames() i|nto node|
|00002ef0| 6c 69 73 74 0d 41 54 50 | 53 65 6e 64 52 65 71 75 |list.ATP|SendRequ|
|00002f00| 65 73 74 20 57 61 74 63 | 68 65 72 2c 54 68 65 50 |est Watc|her,TheP|
|00002f10| 61 63 6b 65 74 0d 45 4c | 53 45 0d 53 65 6e 64 47 |acket.EL|SE.SendG|
|00002f20| 61 6d 65 53 63 6f 72 65 | 54 6f 57 61 74 63 68 65 |ameScore|ToWatche|
|00002f30| 72 20 57 61 74 63 68 65 | 72 0d 54 72 61 6e 73 6d |r Watche|r.Transm|
|00002f40| 69 74 42 6f 61 72 64 54 | 6f 57 61 74 63 68 65 72 |itBoardT|oWatcher|
|00002f50| 20 57 61 74 63 68 65 72 | 0d 45 6e 64 20 49 46 0d | Watcher|.End IF.|
|00002f60| 45 6e 64 20 50 72 6f 63 | 65 73 73 57 61 74 63 68 |End Proc|essWatch|
|00002f70| 65 72 50 61 63 6b 65 74 | 0d 0d 6f 6e 20 54 72 61 |erPacket|..on Tra|
|00002f80| 6e 73 6d 69 74 42 6f 61 | 72 64 54 6f 57 61 74 63 |nsmitBoa|rdToWatc|
|00002f90| 68 65 72 20 57 61 74 63 | 68 65 72 0d 47 6c 6f 62 |her Watc|her.Glob|
|00002fa0| 61 6c 20 50 61 63 6b 65 | 64 42 6f 61 72 64 2c 41 |al Packe|dBoard,A|
|00002fb0| 43 4b 46 4c 61 67 2c 53 | 74 61 72 74 69 6e 67 54 |CKFLag,S|tartingT|
|00002fc0| 72 61 6e 73 6d 69 73 73 | 69 6f 6e 54 69 6d 65 2c |ransmiss|ionTime,|
|00002fd0| 50 69 65 63 65 4d 61 70 | 0d 47 6c 6f 62 61 6c 20 |PieceMap|.Global |
|00002fe0| 54 68 65 50 61 63 6b 65 | 74 2c 50 61 63 6b 65 74 |ThePacke|t,Packet|
|00002ff0| 54 6f 52 65 73 65 6e 64 | 2c 4d 6f 76 65 4c 6f 63 |ToResend|,MoveLoc|
|00003000| 6b 65 64 46 6c 61 67 0d | 0d 70 75 74 20 50 61 63 |kedFlag.|.put Pac|
|00003010| 6b 54 68 65 42 6f 61 72 | 64 58 66 63 6e 50 28 50 |kTheBoar|dXfcnP(P|
|00003020| 69 65 63 65 4d 61 70 29 | 20 69 6e 74 6f 20 50 61 |ieceMap)| into Pa|
|00003030| 63 6b 65 64 42 6f 61 72 | 64 0d 70 75 74 20 22 42 |ckedBoar|d.put "B|
|00003040| 22 20 69 6e 74 6f 20 50 | 61 63 6b 65 74 54 79 70 |" into P|acketTyp|
|00003050| 65 0d 42 75 69 6c 64 41 | 50 61 63 6b 65 74 20 22 |e.BuildA|Packet "|
|00003060| 31 22 2c 50 61 63 6b 65 | 74 54 79 70 65 2c 50 61 |1",Packe|tType,Pa|
|00003070| 63 6b 65 64 42 6f 61 72 | 64 0d 70 75 74 20 54 68 |ckedBoar|d.put Th|
|00003080| 65 50 61 63 6b 65 74 20 | 69 6e 74 6f 20 49 6e 66 |ePacket |into Inf|
|00003090| 6f 50 61 63 6b 65 74 0d | 70 75 74 20 22 48 4e 43 |oPacket.|put "HNC|
|000030a0| 20 2d 20 73 65 6e 64 69 | 6e 67 20 62 6f 61 72 64 | - sendi|ng board|
|000030b0| 20 70 6f 73 69 74 69 6f | 6e 20 74 6f 20 57 41 54 | positio|n to WAT|
|000030c0| 43 48 45 52 21 22 20 69 | 6e 74 6f 20 66 6c 64 20 |CHER!" i|nto fld |
|000030d0| 22 4d 65 73 73 61 67 65 | 20 4f 75 74 22 0d 53 65 |"Message| Out".Se|
|000030e0| 6e 64 57 61 74 63 68 65 | 72 52 6f 75 74 69 6e 65 |ndWatche|rRoutine|
|000030f0| 20 57 61 74 63 68 65 72 | 2c 49 6e 66 6f 50 61 63 | Watcher|,InfoPac|
|00003100| 6b 65 74 0d 45 6e 64 20 | 54 72 61 6e 73 6d 69 74 |ket.End |Transmit|
|00003110| 42 6f 61 72 64 54 6f 57 | 61 74 63 68 65 72 0d 0d |BoardToW|atcher..|
|00003120| 4f 6e 20 53 65 6e 64 47 | 61 6d 65 53 63 6f 72 65 |On SendG|ameScore|
|00003130| 54 6f 57 61 74 63 68 65 | 72 20 57 61 74 63 68 65 |ToWatche|r Watche|
|00003140| 72 0d 67 6c 6f 62 61 6c | 20 67 6c 6f 62 61 6c 41 |r.global| globalA|
|00003150| 54 50 44 61 74 61 2c 20 | 67 6c 6f 62 61 6c 52 65 |TPData, |globalRe|
|00003160| 73 70 6f 6e 73 65 44 61 | 74 61 0d 67 6c 6f 62 61 |sponseDa|ta.globa|
|00003170| 6c 20 67 6c 6f 62 61 6c | 52 65 63 65 69 76 65 44 |l global|ReceiveD|
|00003180| 61 74 61 2c 20 20 6d 79 | 45 6e 74 69 74 79 4e 61 |ata, my|EntityNa|
|00003190| 6d 65 0d 67 6c 6f 62 61 | 6c 20 67 6c 6f 62 61 6c |me.globa|l global|
|000031a0| 53 4b 54 44 61 74 61 2c | 20 67 6c 6f 62 61 6c 4e |SKTData,| globalN|
|000031b0| 42 50 44 61 74 61 0d 47 | 6c 6f 62 61 6c 20 54 68 |BPData.G|lobal Th|
|000031c0| 65 50 61 63 6b 65 74 2c | 49 6e 63 6f 6d 69 6e 67 |ePacket,|Incoming|
|000031d0| 43 68 61 72 73 0d 47 6c | 6f 62 61 6c 20 52 65 63 |Chars.Gl|obal Rec|
|000031e0| 65 69 76 65 64 50 61 63 | 6b 65 74 44 61 74 61 53 |eivedPac|ketDataS|
|000031f0| 74 72 69 6e 67 0d 0d 70 | 75 74 20 65 6d 70 74 79 |tring..p|ut empty|
|00003200| 20 69 6e 74 6f 20 50 6b | 74 4e 6f 0d 70 75 74 20 | into Pk|tNo.put |
|00003210| 62 6b 67 6e 64 20 66 6c | 64 20 22 67 61 6d 65 73 |bkgnd fl|d "games|
|00003220| 63 6f 72 65 22 20 69 6e | 74 6f 20 53 63 6f 72 65 |core" in|to Score|
|00003230| 48 6f 6c 64 65 72 0d 70 | 75 74 20 74 68 65 20 6e |Holder.p|ut the n|
|00003240| 75 6d 62 65 72 20 6f 66 | 20 6c 69 6e 65 73 20 6f |umber of| lines o|
|00003250| 66 20 66 6c 64 20 22 67 | 61 6d 65 73 63 6f 72 65 |f fld "g|amescore|
|00003260| 22 20 69 6e 74 6f 20 47 | 61 6d 65 4c 69 6e 65 73 |" into G|ameLines|
|00003270| 0d 70 75 74 20 74 72 75 | 6e 63 28 47 61 6d 65 4c |.put tru|nc(GameL|
|00003280| 69 6e 65 73 2f 31 30 20 | 2b 20 2e 39 29 20 69 6e |ines/10 |+ .9) in|
|00003290| 74 6f 20 50 6b 74 43 6e | 74 0d 70 75 74 20 74 68 |to PktCn|t.put th|
|000032a0| 65 20 6e 75 6d 54 6f 43 | 68 61 72 20 6f 66 20 28 |e numToC|har of (|
|000032b0| 50 6b 74 43 6e 74 20 2b | 20 33 32 29 20 69 6e 74 |PktCnt +| 32) int|
|000032c0| 6f 20 50 6b 74 43 6e 74 | 53 74 72 0d 52 65 70 65 |o PktCnt|Str.Repe|
|000032d0| 61 74 20 75 6e 74 69 6c | 20 53 63 6f 72 65 48 6f |at until| ScoreHo|
|000032e0| 6c 64 65 72 20 69 73 20 | 65 6d 70 74 79 0d 61 64 |lder is |empty.ad|
|000032f0| 64 20 31 20 74 6f 20 50 | 6b 74 4e 6f 0d 70 75 74 |d 1 to P|ktNo.put|
|00003300| 20 74 68 65 20 6e 75 6d | 54 6f 43 68 61 72 20 6f | the num|ToChar o|
|00003310| 66 20 28 50 6b 74 4e 6f | 20 2b 20 33 32 29 20 69 |f (PktNo| + 32) i|
|00003320| 6e 74 6f 20 50 6b 74 4e | 6f 53 74 72 0d 70 75 74 |nto PktN|oStr.put|
|00003330| 20 74 68 65 20 6e 75 6d | 62 65 72 20 6f 66 20 6c | the num|ber of l|
|00003340| 69 6e 65 73 20 6f 66 20 | 53 63 6f 72 65 48 6f 6c |ines of |ScoreHol|
|00003350| 64 65 72 20 69 6e 74 6f | 20 4e 6f 4f 66 4c 69 6e |der into| NoOfLin|
|00003360| 65 73 0d 70 75 74 20 6c | 69 6e 65 20 31 20 74 6f |es.put l|ine 1 to|
|00003370| 20 31 30 20 6f 66 20 53 | 63 6f 72 65 48 6f 6c 64 | 10 of S|coreHold|
|00003380| 65 72 20 69 6e 74 6f 20 | 50 61 72 74 69 61 6c 53 |er into |PartialS|
|00003390| 63 6f 72 65 0d 70 75 74 | 20 50 6b 74 4e 6f 53 74 |core.put| PktNoSt|
|000033a0| 72 20 26 20 50 6b 74 43 | 6e 74 53 74 72 20 26 20 |r & PktC|ntStr & |
|000033b0| 50 61 72 74 69 61 6c 53 | 63 6f 72 65 20 69 6e 74 |PartialS|core int|
|000033c0| 6f 20 53 63 6f 72 65 50 | 61 63 6b 65 74 0d 70 75 |o ScoreP|acket.pu|
|000033d0| 74 20 65 6d 70 74 79 20 | 69 6e 74 6f 20 53 65 71 |t empty |into Seq|
|000033e0| 4e 75 6d 0d 42 75 69 6c | 64 41 50 61 63 6b 65 74 |Num.Buil|dAPacket|
|000033f0| 20 53 65 71 4e 75 6d 2c | 22 47 22 2c 53 63 6f 72 | SeqNum,|"G",Scor|
|00003400| 65 50 61 63 6b 65 74 0d | 70 75 74 20 54 68 65 50 |ePacket.|put TheP|
|00003410| 61 63 6b 65 74 20 69 6e | 74 6f 20 49 6e 66 6f 50 |acket in|to InfoP|
|00003420| 61 63 6b 65 74 0d 70 75 | 74 20 50 6b 74 4e 6f 20 |acket.pu|t PktNo |
|00003430| 26 20 22 20 6f 66 20 22 | 20 26 20 50 6b 74 43 6e |& " of "| & PktCn|
|00003440| 74 20 69 6e 74 6f 20 50 | 6b 74 4d 73 67 0d 70 75 |t into P|ktMsg.pu|
|00003450| 74 20 22 48 4e 43 20 2d | 20 73 65 6e 64 69 6e 67 |t "HNC -| sending|
|00003460| 20 67 61 6d 65 73 63 6f | 72 65 20 70 61 63 6b 65 | gamesco|re packe|
|00003470| 74 20 22 20 26 20 50 6b | 74 4d 73 67 20 26 20 22 |t " & Pk|tMsg & "|
|00003480| 20 74 6f 20 57 41 54 43 | 48 45 52 21 22 20 c2 0d | to WATC|HER!" ..|
|00003490| 69 6e 74 6f 20 66 6c 64 | 20 22 4d 65 73 73 61 67 |into fld| "Messag|
|000034a0| 65 20 4f 75 74 22 0d 53 | 65 6e 64 57 61 74 63 68 |e Out".S|endWatch|
|000034b0| 65 72 52 6f 75 74 69 6e | 65 20 57 61 74 63 68 65 |erRoutin|e Watche|
|000034c0| 72 2c 49 6e 66 6f 50 61 | 63 6b 65 74 0d 41 54 50 |r,InfoPa|cket.ATP|
|000034d0| 52 65 63 65 69 76 65 20 | 47 69 76 65 55 73 54 68 |Receive |GiveUsTh|
|000034e0| 65 44 61 74 61 0d 64 65 | 6c 65 74 65 20 6c 69 6e |eData.de|lete lin|
|000034f0| 65 20 31 20 74 6f 20 31 | 30 20 6f 66 20 53 63 6f |e 1 to 1|0 of Sco|
|00003500| 72 65 48 6f 6c 64 65 72 | 0d 70 75 74 20 65 6d 70 |reHolder|.put emp|
|00003510| 74 79 20 69 6e 74 6f 20 | 53 63 6f 72 65 49 74 65 |ty into |ScoreIte|
|00003520| 6d 73 0d 77 61 69 74 20 | 32 20 73 65 63 6f 6e 64 |ms.wait |2 second|
|00003530| 73 0d 45 6e 64 20 52 65 | 70 65 61 74 0d 41 54 50 |s.End Re|peat.ATP|
|00003540| 52 65 63 65 69 76 65 20 | 47 69 76 65 55 73 54 68 |Receive |GiveUsTh|
|00003550| 65 44 61 74 61 0d 45 6e | 64 20 53 65 6e 64 47 61 |eData.En|d SendGa|
|00003560| 6d 65 53 63 6f 72 65 54 | 6f 57 61 74 63 68 65 72 |meScoreT|oWatcher|
|00003570| 0d 0d 4f 6e 20 55 70 64 | 61 74 65 47 61 6d 65 53 |..On Upd|ateGameS|
|00003580| 63 6f 72 65 56 69 61 50 | 61 63 6b 65 74 0d 47 6c |coreViaP|acket.Gl|
|00003590| 6f 62 61 6c 20 52 65 63 | 65 69 76 65 64 50 61 63 |obal Rec|eivedPac|
|000035a0| 6b 65 74 44 61 74 61 53 | 74 72 69 6e 67 2c 4d 6f |ketDataS|tring,Mo|
|000035b0| 76 65 43 6f 75 6e 74 2c | 48 61 6c 66 4d 6f 76 65 |veCount,|HalfMove|
|000035c0| 0d 0d 70 75 74 20 65 6d | 70 74 79 20 69 6e 74 6f |..put em|pty into|
|000035d0| 20 50 61 72 74 69 61 6c | 53 63 6f 72 65 0d 64 65 | Partial|Score.de|
|000035e0| 6c 65 74 65 20 63 68 61 | 72 20 31 20 74 6f 20 32 |lete cha|r 1 to 2|
|000035f0| 20 6f 66 20 52 65 63 65 | 69 76 65 64 50 61 63 6b | of Rece|ivedPack|
|00003600| 65 74 44 61 74 61 53 74 | 72 69 6e 67 0d 70 75 74 |etDataSt|ring.put|
|00003610| 20 52 65 63 65 69 76 65 | 64 50 61 63 6b 65 74 44 | Receive|dPacketD|
|00003620| 61 74 61 53 74 72 69 6e | 67 20 69 6e 74 6f 20 50 |ataStrin|g into P|
|00003630| 61 72 74 69 61 6c 53 63 | 6f 72 65 0d 70 75 74 20 |artialSc|ore.put |
|00003640| 74 68 65 20 6e 75 6d 62 | 65 72 20 6f 66 20 6c 69 |the numb|er of li|
|00003650| 6e 65 73 20 6f 66 20 62 | 6b 67 6e 64 20 66 6c 64 |nes of b|kgnd fld|
|00003660| 20 22 67 61 6d 65 73 63 | 6f 72 65 22 20 69 6e 74 | "gamesc|ore" int|
|00003670| 6f 20 4e 6f 4f 66 4c 69 | 6e 65 73 0d 70 75 74 20 |o NoOfLi|nes.put |
|00003680| 65 6d 70 74 79 20 69 6e | 74 6f 20 6c 69 6e 65 20 |empty in|to line |
|00003690| 28 4e 6f 4f 66 4c 69 6e | 65 73 2b 31 29 20 6f 66 |(NoOfLin|es+1) of|
|000036a0| 20 62 6b 67 6e 64 20 66 | 6c 64 20 22 67 61 6d 65 | bkgnd f|ld "game|
|000036b0| 73 63 6f 72 65 22 0d 70 | 75 74 20 50 61 72 74 69 |score".p|ut Parti|
|000036c0| 61 6c 53 63 6f 72 65 20 | 61 66 74 65 72 20 62 6b |alScore |after bk|
|000036d0| 67 6e 64 20 66 6c 64 20 | 22 67 61 6d 65 73 63 6f |gnd fld |"gamesco|
|000036e0| 72 65 22 0d 70 75 74 20 | 28 74 68 65 20 6e 75 6d |re".put |(the num|
|000036f0| 62 65 72 20 6f 66 20 6c | 69 6e 65 73 20 6f 66 20 |ber of l|ines of |
|00003700| 66 6c 64 20 22 67 61 6d | 65 73 63 6f 72 65 22 29 |fld "gam|escore")|
|00003710| 20 2b 20 31 20 69 6e 74 | 6f 20 4d 6f 76 65 43 6f | + 1 int|o MoveCo|
|00003720| 75 6e 74 0d 45 6e 64 20 | 55 70 64 61 74 65 47 61 |unt.End |UpdateGa|
|00003730| 6d 65 53 63 6f 72 65 56 | 69 61 50 61 63 6b 65 74 |meScoreV|iaPacket|
|00003740| 0d 0d 6f 6e 20 53 71 75 | 61 72 65 4e 61 6d 65 73 |..on Squ|areNames|
|00003750| 4f 66 66 0d 47 6c 6f 62 | 61 6c 20 53 71 75 61 72 |Off.Glob|al Squar|
|00003760| 65 4e 61 6d 65 73 53 68 | 6f 77 69 6e 67 0d 52 65 |eNamesSh|owing.Re|
|00003770| 70 65 61 74 20 77 69 74 | 68 20 52 61 6e 6b 20 3d |peat wit|h Rank =|
|00003780| 20 31 20 74 6f 20 38 0d | 52 65 70 65 61 74 20 77 | 1 to 8.|Repeat w|
|00003790| 69 74 68 20 46 69 6c 65 | 73 20 3d 20 31 20 74 6f |ith File|s = 1 to|
|000037a0| 20 38 0d 50 75 74 20 63 | 68 61 72 20 46 69 6c 65 | 8.Put c|har File|
|000037b0| 73 20 6f 66 20 22 61 62 | 63 64 65 66 67 68 22 20 |s of "ab|cdefgh" |
|000037c0| 26 20 52 61 6e 6b 20 69 | 6e 74 6f 20 42 6c 61 6e |& Rank i|nto Blan|
|000037d0| 6b 53 71 75 61 72 65 0d | 53 65 74 20 73 68 6f 77 |kSquare.|Set show|
|000037e0| 4e 61 6d 65 20 6f 66 20 | 62 61 63 6b 67 72 6f 75 |Name of |backgrou|
|000037f0| 6e 64 20 62 75 74 74 6f | 6e 20 42 6c 61 6e 6b 53 |nd butto|n BlankS|
|00003800| 71 75 61 72 65 20 74 6f | 20 46 61 6c 73 65 0d 45 |quare to| False.E|
|00003810| 6e 64 20 52 65 70 65 61 | 74 0d 45 6e 64 20 52 65 |nd Repea|t.End Re|
|00003820| 70 65 61 74 0d 50 75 74 | 20 46 61 6c 73 65 20 69 |peat.Put| False i|
|00003830| 6e 74 6f 20 53 71 75 61 | 72 65 4e 61 6d 65 73 53 |nto Squa|reNamesS|
|00003840| 68 6f 77 69 6e 67 0d 65 | 6e 64 20 53 71 75 61 72 |howing.e|nd Squar|
|00003850| 65 4e 61 6d 65 73 4f 66 | 66 0d 0d 6f 6e 20 53 65 |eNamesOf|f..on Se|
|00003860| 74 4d 6f 64 65 6d 20 53 | 6f 6d 65 53 74 72 69 6e |tModem S|omeStrin|
|00003870| 67 0d 73 65 6e 64 53 50 | 6f 72 74 20 31 2c 66 61 |g.sendSP|ort 1,fa|
|00003880| 6c 73 65 2c 53 6f 6d 65 | 53 74 72 69 6e 67 20 26 |lse,Some|String &|
|00003890| 20 72 65 74 75 72 6e 0d | 45 6e 64 20 53 65 74 4d | return.|End SetM|
|000038a0| 6f 64 65 6d 0d 0d 6f 6e | 20 73 65 74 42 61 75 64 |odem..on| setBaud|
|000038b0| 20 72 61 74 65 0d 69 66 | 20 72 61 74 65 20 69 73 | rate.if| rate is|
|000038c0| 20 33 30 30 20 74 68 65 | 6e 20 72 65 73 65 74 53 | 300 the|n resetS|
|000038d0| 50 6f 72 74 20 31 2c 33 | 38 30 2b 31 36 33 38 34 |Port 1,3|80+16384|
|000038e0| 2b 33 30 37 32 0d 65 6c | 73 65 20 69 66 20 72 61 |+3072.el|se if ra|
|000038f0| 74 65 20 69 73 20 31 32 | 30 30 20 74 68 65 6e 20 |te is 12|00 then |
|00003900| 72 65 73 65 74 53 50 6f | 72 74 20 31 2c 39 34 2b |resetSPo|rt 1,94+|
|00003910| 31 36 33 38 34 2b 33 30 | 37 32 0d 65 6c 73 65 20 |16384+30|72.else |
|00003920| 69 66 20 72 61 74 65 20 | 69 73 20 32 34 30 30 20 |if rate |is 2400 |
|00003930| 74 68 65 6e 20 72 65 73 | 65 74 53 50 6f 72 74 20 |then res|etSPort |
|00003940| 31 2c 34 36 2b 31 36 33 | 38 34 2b 33 30 37 32 0d |1,46+163|84+3072.|
|00003950| 65 6c 73 65 20 69 66 20 | 72 61 74 65 20 69 73 20 |else if |rate is |
|00003960| 34 38 30 30 20 74 68 65 | 6e 20 72 65 73 65 74 53 |4800 the|n resetS|
|00003970| 50 6f 72 74 20 31 2c 32 | 32 2b 31 36 33 38 34 2b |Port 1,2|2+16384+|
|00003980| 33 30 37 32 0d 65 6c 73 | 65 20 69 66 20 72 61 74 |3072.els|e if rat|
|00003990| 65 20 69 73 20 39 36 30 | 30 20 74 68 65 6e 20 72 |e is 960|0 then r|
|000039a0| 65 73 65 74 53 50 6f 72 | 74 20 31 2c 31 30 2b 31 |esetSPor|t 1,10+1|
|000039b0| 36 33 38 34 2b 33 30 37 | 32 0d 65 6e 64 20 73 65 |6384+307|2.end se|
|000039c0| 74 42 61 75 64 0d 0d 0d | 6f 6e 20 50 72 6f 63 65 |tBaud...|on Proce|
|000039d0| 73 73 49 6e 63 6f 6d 69 | 6e 67 43 6c 6f 63 6b 50 |ssIncomi|ngClockP|
|000039e0| 61 63 6b 65 74 0d 2d 2d | 20 69 6e 69 74 69 61 6c |acket.--| initial|
|000039f0| 69 7a 65 20 63 6c 6f 63 | 6b 73 20 61 6e 64 20 73 |ize cloc|ks and s|
|00003a00| 74 61 72 74 20 75 70 20 | 6f 75 72 20 63 6c 6f 63 |tart up |our cloc|
|00003a10| 6b 0d 47 6c 6f 62 61 6c | 20 43 6c 6f 63 6b 46 6c |k.Global| ClockFl|
|00003a20| 61 67 2c 43 75 72 72 65 | 6e 74 53 65 63 73 0d 47 |ag,Curre|ntSecs.G|
|00003a30| 6c 6f 62 61 6c 20 52 65 | 63 65 69 76 65 64 50 61 |lobal Re|ceivedPa|
|00003a40| 63 6b 65 74 44 61 74 61 | 53 74 72 69 6e 67 2c 47 |cketData|String,G|
|00003a50| 61 6d 65 43 6c 6f 63 6b | 54 69 6d 65 0d 47 6c 6f |ameClock|Time.Glo|
|00003a60| 62 61 6c 20 50 6c 61 79 | 4d 6f 64 65 2c 4d 41 43 |bal Play|Mode,MAC|
|00003a70| 74 6f 4d 41 43 0d 70 75 | 74 20 52 65 63 65 69 76 |toMAC.pu|t Receiv|
|00003a80| 65 64 50 61 63 6b 65 74 | 44 61 74 61 53 74 72 69 |edPacket|DataStri|
|00003a90| 6e 67 20 69 6e 74 6f 20 | 43 6c 6f 63 6b 53 74 72 |ng into |ClockStr|
|00003aa0| 69 6e 67 0d 49 46 20 43 | 6c 6f 63 6b 53 74 72 69 |ing.IF C|lockStri|
|00003ab0| 6e 67 20 3d 20 22 4f 46 | 46 22 20 54 48 45 4e 0d |ng = "OF|F" THEN.|
|00003ac0| 70 75 74 20 66 61 6c 73 | 65 20 69 6e 74 6f 20 43 |put fals|e into C|
|00003ad0| 6c 6f 63 6b 46 6c 61 67 | 0d 70 75 74 20 65 6d 70 |lockFlag|.put emp|
|00003ae0| 74 79 20 69 6e 74 6f 20 | 66 69 65 6c 64 20 22 43 |ty into |field "C|
|00003af0| 6c 6f 63 6b 31 22 0d 70 | 75 74 20 65 6d 70 74 79 |lock1".p|ut empty|
|00003b00| 20 69 6e 74 6f 20 66 69 | 65 6c 64 20 22 43 6c 6f | into fi|eld "Clo|
|00003b10| 63 6b 32 22 0d 45 4c 53 | 45 0d 70 75 74 20 74 72 |ck2".ELS|E.put tr|
|00003b20| 75 65 20 69 6e 74 6f 20 | 43 6c 6f 63 6b 46 6c 61 |ue into |ClockFla|
|00003b30| 67 0d 70 75 74 20 43 6c | 6f 63 6b 53 74 72 69 6e |g.put Cl|ockStrin|
|00003b40| 67 20 69 6e 74 6f 20 47 | 61 6d 65 43 6c 6f 63 6b |g into G|ameClock|
|00003b50| 54 69 6d 65 0d 70 75 74 | 20 46 6f 72 6d 61 74 43 |Time.put| FormatC|
|00003b60| 6c 6f 63 6b 58 66 63 6e | 50 28 47 61 6d 65 43 6c |lockXfcn|P(GameCl|
|00003b70| 6f 63 6b 54 69 6d 65 29 | 20 69 6e 74 6f 20 66 69 |ockTime)| into fi|
|00003b80| 65 6c 64 20 22 43 6c 6f | 63 6b 31 22 0d 70 75 74 |eld "Clo|ck1".put|
|00003b90| 20 46 6f 72 6d 61 74 43 | 6c 6f 63 6b 58 66 63 6e | FormatC|lockXfcn|
|00003ba0| 50 28 47 61 6d 65 43 6c | 6f 63 6b 54 69 6d 65 29 |P(GameCl|ockTime)|
|00003bb0| 20 69 6e 74 6f 20 66 69 | 65 6c 64 20 22 43 6c 6f | into fi|eld "Clo|
|00003bc0| 63 6b 32 22 0d 70 75 74 | 20 30 20 69 6e 74 6f 20 |ck2".put| 0 into |
|00003bd0| 43 75 72 72 65 6e 74 53 | 65 63 73 0d 70 75 74 20 |CurrentS|ecs.put |
|00003be0| 74 68 65 20 73 65 63 73 | 20 69 6e 74 6f 20 53 74 |the secs| into St|
|00003bf0| 61 72 74 69 6e 67 54 69 | 6d 65 0d 45 6e 64 20 49 |artingTi|me.End I|
|00003c00| 46 0d 45 6e 64 20 50 72 | 6f 63 65 73 73 49 6e 63 |F.End Pr|ocessInc|
|00003c10| 6f 6d 69 6e 67 43 6c 6f | 63 6b 50 61 63 6b 65 74 |omingClo|ckPacket|
|00003c20| 0d 0d 6f 6e 20 45 78 74 | 72 61 63 74 43 6c 6f 63 |..on Ext|ractCloc|
|00003c30| 6b 54 69 6d 65 46 72 6f | 6d 4d 6f 76 65 50 61 63 |kTimeFro|mMovePac|
|00003c40| 6b 65 74 0d 47 6c 6f 62 | 61 6c 20 52 65 63 65 69 |ket.Glob|al Recei|
|00003c50| 76 65 64 50 61 63 6b 65 | 74 44 61 74 61 53 74 72 |vedPacke|tDataStr|
|00003c60| 69 6e 67 0d 70 75 74 20 | 74 68 65 20 6c 65 6e 67 |ing.put |the leng|
|00003c70| 74 68 20 6f 66 20 52 65 | 63 65 69 76 65 64 50 61 |th of Re|ceivedPa|
|00003c80| 63 6b 65 74 44 61 74 61 | 53 74 72 69 6e 67 20 69 |cketData|String i|
|00003c90| 6e 74 6f 20 44 61 74 61 | 4c 65 6e 67 74 68 0d 70 |nto Data|Length.p|
|00003ca0| 75 74 20 6f 66 66 73 65 | 74 28 22 2a 22 2c 52 65 |ut offse|t("*",Re|
|00003cb0| 63 65 69 76 65 64 50 61 | 63 6b 65 74 44 61 74 61 |ceivedPa|cketData|
|00003cc0| 53 74 72 69 6e 67 29 20 | 69 6e 74 6f 20 54 69 6d |String) |into Tim|
|00003cd0| 65 41 73 74 65 72 69 73 | 6b 0d 49 46 20 54 69 6d |eAsteris|k.IF Tim|
|00003ce0| 65 41 73 74 65 72 69 73 | 6b 20 3d 20 30 20 54 48 |eAsteris|k = 0 TH|
|00003cf0| 45 4e 20 65 78 69 74 20 | 45 78 74 72 61 63 74 43 |EN exit |ExtractC|
|00003d00| 6c 6f 63 6b 54 69 6d 65 | 46 72 6f 6d 4d 6f 76 65 |lockTime|FromMove|
|00003d10| 50 61 63 6b 65 74 0d 70 | 75 74 20 63 68 61 72 20 |Packet.p|ut char |
|00003d20| 54 69 6d 65 41 73 74 65 | 72 69 73 6b 2b 31 20 74 |TimeAste|risk+1 t|
|00003d30| 6f 20 44 61 74 61 4c 65 | 6e 67 74 68 20 6f 66 20 |o DataLe|ngth of |
|00003d40| 52 65 63 65 69 76 65 64 | 50 61 63 6b 65 74 44 61 |Received|PacketDa|
|00003d50| 74 61 53 74 72 69 6e 67 | 20 c2 0d 69 6e 74 6f 20 |taString| ..into |
|00003d60| 45 6e 65 6d 79 54 69 6d | 65 0d 70 75 74 20 46 6f |EnemyTim|e.put Fo|
|00003d70| 72 6d 61 74 43 6c 6f 63 | 6b 58 66 63 6e 50 28 45 |rmatCloc|kXfcnP(E|
|00003d80| 6e 65 6d 79 54 69 6d 65 | 29 20 69 6e 74 6f 20 62 |nemyTime|) into b|
|00003d90| 6b 67 6e 64 20 66 6c 64 | 20 22 43 6c 6f 63 6b 32 |kgnd fld| "Clock2|
|00003da0| 22 0d 70 75 74 20 63 68 | 61 72 20 31 20 74 6f 20 |".put ch|ar 1 to |
|00003db0| 54 69 6d 65 41 73 74 65 | 72 69 73 6b 2d 31 20 6f |TimeAste|risk-1 o|
|00003dc0| 66 20 52 65 63 65 69 76 | 65 64 50 61 63 6b 65 74 |f Receiv|edPacket|
|00003dd0| 44 61 74 61 53 74 72 69 | 6e 67 20 c2 0d 69 6e 74 |DataStri|ng ..int|
|00003de0| 6f 20 52 65 63 65 69 76 | 65 64 50 61 63 6b 65 74 |o Receiv|edPacket|
|00003df0| 44 61 74 61 53 74 72 69 | 6e 67 0d 45 6e 64 20 45 |DataStri|ng.End E|
|00003e00| 78 74 72 61 63 74 43 6c | 6f 63 6b 54 69 6d 65 46 |xtractCl|ockTimeF|
|00003e10| 72 6f 6d 4d 6f 76 65 50 | 61 63 6b 65 74 0d 0d 6f |romMoveP|acket..o|
|00003e20| 6e 20 42 75 69 6c 64 41 | 50 61 63 6b 65 74 20 53 |n BuildA|Packet S|
|00003e30| 65 71 4e 75 6d 2c 50 61 | 63 6b 65 74 54 79 70 65 |eqNum,Pa|cketType|
|00003e40| 2c 44 61 74 61 53 74 72 | 69 6e 67 0d 2d 2d 20 61 |,DataStr|ing.-- a|
|00003e50| 20 70 61 63 6b 65 74 20 | 3a 20 53 4f 48 2c 4c 65 | packet |: SOH,Le|
|00003e60| 6e 67 74 68 43 48 41 52 | 2c 53 65 71 23 43 48 41 |ngthCHAR|,Seq#CHA|
|00003e70| 52 2c 54 79 70 65 43 48 | 41 52 2c 44 41 54 41 2c |R,TypeCH|AR,DATA,|
|00003e80| 33 2d 43 68 65 63 6b 43 | 48 41 52 53 2c 45 54 42 |3-CheckC|HARS,ETB|
|00003e90| 0d 47 6c 6f 62 61 6c 20 | 53 4f 48 2c 45 54 42 2c |.Global |SOH,ETB,|
|00003ea0| 50 61 63 6b 65 74 53 65 | 71 75 65 6e 63 65 4e 75 |PacketSe|quenceNu|
|00003eb0| 6d 62 65 72 2c 54 68 65 | 50 61 63 6b 65 74 0d 47 |mber,The|Packet.G|
|00003ec0| 6c 6f 62 61 6c 20 53 65 | 6e 74 50 61 63 6b 65 74 |lobal Se|ntPacket|
|00003ed0| 44 61 74 61 53 74 72 69 | 6e 67 0d 70 75 74 20 44 |DataStri|ng.put D|
|00003ee0| 61 74 61 53 74 72 69 6e | 67 20 69 6e 74 6f 20 53 |ataStrin|g into S|
|00003ef0| 65 6e 74 50 61 63 6b 65 | 74 44 61 74 61 53 74 72 |entPacke|tDataStr|
|00003f00| 69 6e 67 0d 70 75 74 20 | 74 68 65 20 6c 65 6e 67 |ing.put |the leng|
|00003f10| 74 68 20 6f 66 20 44 61 | 74 61 53 74 72 69 6e 67 |th of Da|taString|
|00003f20| 20 2b 20 35 20 69 6e 74 | 6f 20 50 61 63 6b 65 74 | + 5 int|o Packet|
|00003f30| 4c 65 6e 67 74 68 0d 70 | 75 74 20 74 68 65 20 4e |Length.p|ut the N|
|00003f40| 75 6d 54 6f 43 68 61 72 | 20 6f 66 20 28 50 61 63 |umToChar| of (Pac|
|00003f50| 6b 65 74 4c 65 6e 67 74 | 68 20 2b 20 33 32 29 20 |ketLengt|h + 32) |
|00003f60| 69 6e 74 6f 20 50 61 63 | 6b 65 74 4c 65 6e 67 74 |into Pac|ketLengt|
|00003f70| 68 43 68 61 72 0d 49 46 | 20 53 65 71 4e 75 6d 20 |hChar.IF| SeqNum |
|00003f80| 69 73 20 65 6d 70 74 79 | 20 54 48 45 4e 0d 61 64 |is empty| THEN.ad|
|00003f90| 64 20 31 20 74 6f 20 50 | 61 63 6b 65 74 53 65 71 |d 1 to P|acketSeq|
|00003fa0| 75 65 6e 63 65 4e 75 6d | 62 65 72 0d 70 75 74 20 |uenceNum|ber.put |
|00003fb0| 50 61 63 6b 65 74 53 65 | 71 75 65 6e 63 65 4e 75 |PacketSe|quenceNu|
|00003fc0| 6d 62 65 72 20 69 6e 74 | 6f 20 53 65 71 4e 75 6d |mber int|o SeqNum|
|00003fd0| 0d 45 6e 64 20 49 46 0d | 70 75 74 20 53 65 71 4e |.End IF.|put SeqN|
|00003fe0| 75 6d 20 6d 6f 64 20 36 | 34 20 69 6e 74 6f 20 53 |um mod 6|4 into S|
|00003ff0| 65 71 4e 75 6d 0d 70 75 | 74 20 53 65 71 4e 75 6d |eqNum.pu|t SeqNum|
|00004000| 20 69 6e 74 6f 20 50 61 | 63 6b 65 74 53 65 71 75 | into Pa|cketSequ|
|00004010| 65 6e 63 65 4e 75 6d 62 | 65 72 0d 70 75 74 20 74 |enceNumb|er.put t|
|00004020| 68 65 20 4e 75 6d 54 6f | 43 68 61 72 20 6f 66 20 |he NumTo|Char of |
|00004030| 28 53 65 71 4e 75 6d 2b | 33 32 29 20 69 6e 74 6f |(SeqNum+|32) into|
|00004040| 20 50 61 63 6b 65 74 53 | 65 71 75 65 6e 63 65 43 | PacketS|equenceC|
|00004050| 68 61 72 0d 70 75 74 20 | 50 61 63 6b 65 74 4c 65 |har.put |PacketLe|
|00004060| 6e 67 74 68 43 68 61 72 | 20 26 20 50 61 63 6b 65 |ngthChar| & Packe|
|00004070| 74 53 65 71 75 65 6e 63 | 65 43 68 61 72 20 26 20 |tSequenc|eChar & |
|00004080| 50 61 63 6b 65 74 54 79 | 70 65 20 26 20 c2 0d 44 |PacketTy|pe & ..D|
|00004090| 61 74 61 53 74 72 69 6e | 67 20 69 6e 74 6f 20 50 |ataStrin|g into P|
|000040a0| 61 63 6b 65 74 53 74 72 | 69 6e 67 0d 70 75 74 20 |acketStr|ing.put |
|000040b0| 43 68 65 63 6b 53 75 6d | 43 61 6c 63 75 6c 61 74 |CheckSum|Calculat|
|000040c0| 69 6f 6e 28 50 61 63 6b | 65 74 53 74 72 69 6e 67 |ion(Pack|etString|
|000040d0| 29 20 69 6e 74 6f 20 50 | 61 63 6b 65 74 43 68 65 |) into P|acketChe|
|000040e0| 63 6b 53 75 6d 0d 70 75 | 74 20 53 4f 48 20 26 20 |ckSum.pu|t SOH & |
|000040f0| 50 61 63 6b 65 74 53 74 | 72 69 6e 67 20 26 20 50 |PacketSt|ring & P|
|00004100| 61 63 6b 65 74 43 68 65 | 63 6b 53 75 6d 20 26 20 |acketChe|ckSum & |
|00004110| 45 54 42 20 69 6e 74 6f | 20 54 68 65 50 61 63 6b |ETB into| ThePack|
|00004120| 65 74 0d 45 6e 64 20 42 | 75 69 6c 64 41 50 61 63 |et.End B|uildAPac|
|00004130| 6b 65 74 0d 0d 6f 6e 20 | 55 6e 50 61 63 6b 41 50 |ket..on |UnPackAP|
|00004140| 61 63 6b 65 74 20 52 65 | 63 65 69 76 65 64 50 61 |acket Re|ceivedPa|
|00004150| 63 6b 65 74 0d 2d 2d 20 | 61 20 70 61 63 6b 65 74 |cket.-- |a packet|
|00004160| 20 3a 20 53 4f 48 2c 4c | 65 6e 67 74 68 43 48 41 | : SOH,L|engthCHA|
|00004170| 52 2c 53 65 71 23 43 48 | 41 52 2c 54 79 70 65 43 |R,Seq#CH|AR,TypeC|
|00004180| 48 41 52 2c 44 41 54 41 | 2c 33 2d 43 68 65 63 6b |HAR,DATA|,3-Check|
|00004190| 43 48 41 52 53 2c 45 54 | 42 0d 47 6c 6f 62 61 6c |CHARS,ET|B.Global|
|000041a0| 20 52 65 63 65 69 76 65 | 64 50 61 63 6b 65 74 4c | Receive|dPacketL|
|000041b0| 65 6e 67 74 68 2c 52 65 | 63 65 69 76 65 64 50 61 |ength,Re|ceivedPa|
|000041c0| 63 6b 65 74 53 65 71 75 | 65 6e 63 65 4e 75 6d 62 |cketSequ|enceNumb|
|000041d0| 65 72 0d 47 6c 6f 62 61 | 6c 20 52 65 63 65 69 76 |er.Globa|l Receiv|
|000041e0| 65 64 50 61 63 6b 65 74 | 54 79 70 65 2c 52 65 63 |edPacket|Type,Rec|
|000041f0| 65 69 76 65 64 50 61 63 | 6b 65 74 44 61 74 61 53 |eivedPac|ketDataS|
|00004200| 74 72 69 6e 67 0d 47 6c | 6f 62 61 6c 20 52 65 63 |tring.Gl|obal Rec|
|00004210| 65 69 76 65 64 50 61 63 | 6b 65 74 43 68 65 63 6b |eivedPac|ketCheck|
|00004220| 53 75 6d 0d 64 65 6c 65 | 74 65 20 66 69 72 73 74 |Sum.dele|te first|
|00004230| 20 63 68 61 72 20 6f 66 | 20 52 65 63 65 69 76 65 | char of| Receive|
|00004240| 64 50 61 63 6b 65 74 0d | 64 65 6c 65 74 65 20 6c |dPacket.|delete l|
|00004250| 61 73 74 20 63 68 61 72 | 20 6f 66 20 52 65 63 65 |ast char| of Rece|
|00004260| 69 76 65 64 50 61 63 6b | 65 74 0d 70 75 74 20 28 |ivedPack|et.put (|
|00004270| 74 68 65 20 43 68 61 72 | 54 6f 4e 75 6d 20 6f 66 |the Char|ToNum of|
|00004280| 20 63 68 61 72 20 31 20 | 6f 66 20 52 65 63 65 69 | char 1 |of Recei|
|00004290| 76 65 64 50 61 63 6b 65 | 74 29 20 2d 20 33 32 20 |vedPacke|t) - 32 |
|000042a0| 69 6e 74 6f 20 c2 0d 52 | 65 63 65 69 76 65 64 50 |into ..R|eceivedP|
|000042b0| 61 63 6b 65 74 4c 65 6e | 67 74 68 0d 49 46 20 52 |acketLen|gth.IF R|
|000042c0| 65 63 65 69 76 65 64 50 | 61 63 6b 65 74 4c 65 6e |eceivedP|acketLen|
|000042d0| 67 74 68 20 3c 20 33 20 | 54 48 45 4e 20 70 75 74 |gth < 3 |THEN put|
|000042e0| 20 33 20 69 6e 74 6f 20 | 52 65 63 65 69 76 65 64 | 3 into |Received|
|000042f0| 50 61 63 6b 65 74 4c 65 | 6e 67 74 68 0d 64 65 6c |PacketLe|ngth.del|
|00004300| 65 74 65 20 66 69 72 73 | 74 20 63 68 61 72 20 6f |ete firs|t char o|
|00004310| 66 20 52 65 63 65 69 76 | 65 64 50 61 63 6b 65 74 |f Receiv|edPacket|
|00004320| 0d 70 75 74 20 28 74 68 | 65 20 43 68 61 72 54 6f |.put (th|e CharTo|
|00004330| 4e 75 6d 20 6f 66 20 63 | 68 61 72 20 31 20 6f 66 |Num of c|har 1 of|
|00004340| 20 52 65 63 65 69 76 65 | 64 50 61 63 6b 65 74 29 | Receive|dPacket)|
|00004350| 20 2d 20 33 32 20 69 6e | 74 6f 20 c2 0d 52 65 63 | - 32 in|to ..Rec|
|00004360| 65 69 76 65 64 50 61 63 | 6b 65 74 53 65 71 75 65 |eivedPac|ketSeque|
|00004370| 6e 63 65 4e 75 6d 62 65 | 72 0d 70 75 74 20 63 68 |nceNumbe|r.put ch|
|00004380| 61 72 20 32 20 6f 66 20 | 52 65 63 65 69 76 65 64 |ar 2 of |Received|
|00004390| 50 61 63 6b 65 74 20 69 | 6e 74 6f 20 52 65 63 65 |Packet i|nto Rece|
|000043a0| 69 76 65 64 50 61 63 6b | 65 74 54 79 70 65 0d 70 |ivedPack|etType.p|
|000043b0| 75 74 20 52 65 63 65 69 | 76 65 64 50 61 63 6b 65 |ut Recei|vedPacke|
|000043c0| 74 4c 65 6e 67 74 68 20 | 2d 20 33 20 69 6e 74 6f |tLength |- 3 into|
|000043d0| 20 45 6e 64 4f 66 44 61 | 74 61 0d 49 46 20 45 6e | EndOfDa|ta.IF En|
|000043e0| 64 4f 66 44 61 74 61 20 | 3c 20 33 20 54 48 45 4e |dOfData |< 3 THEN|
|000043f0| 20 70 75 74 20 33 20 69 | 6e 74 6f 20 45 6e 64 4f | put 3 i|nto EndO|
|00004400| 66 44 61 74 61 0d 70 75 | 74 20 63 68 61 72 20 33 |fData.pu|t char 3|
|00004410| 20 74 6f 20 45 6e 64 4f | 66 44 61 74 61 20 6f 66 | to EndO|fData of|
|00004420| 20 52 65 63 65 69 76 65 | 64 50 61 63 6b 65 74 20 | Receive|dPacket |
|00004430| 69 6e 74 6f 20 c2 0d 52 | 65 63 65 69 76 65 64 50 |into ..R|eceivedP|
|00004440| 61 63 6b 65 74 44 61 74 | 61 53 74 72 69 6e 67 0d |acketDat|aString.|
|00004450| 70 75 74 20 63 68 61 72 | 20 28 52 65 63 65 69 76 |put char| (Receiv|
|00004460| 65 64 50 61 63 6b 65 74 | 4c 65 6e 67 74 68 2d 32 |edPacket|Length-2|
|00004470| 29 20 74 6f 20 52 65 63 | 65 69 76 65 64 50 61 63 |) to Rec|eivedPac|
|00004480| 6b 65 74 4c 65 6e 67 74 | 68 20 6f 66 20 c2 0d 52 |ketLengt|h of ..R|
|00004490| 65 63 65 69 76 65 64 50 | 61 63 6b 65 74 20 69 6e |eceivedP|acket in|
|000044a0| 74 6f 20 52 65 63 65 69 | 76 65 64 50 61 63 6b 65 |to Recei|vedPacke|
|000044b0| 74 43 68 65 63 6b 53 75 | 6d 0d 45 6e 64 20 55 6e |tCheckSu|m.End Un|
|000044c0| 50 61 63 6b 41 50 61 63 | 6b 65 74 0d 0d 6f 6e 20 |PackAPac|ket..on |
|000044d0| 53 65 6e 64 54 68 65 4d | 6f 76 65 0d 47 6c 6f 62 |SendTheM|ove.Glob|
|000044e0| 61 6c 20 42 75 74 74 6f | 6e 53 71 75 61 72 65 2c |al Butto|nSquare,|
|000044f0| 46 69 72 73 74 48 61 6c | 66 4f 66 4d 6f 76 65 2c |FirstHal|fOfMove,|
|00004500| 44 65 70 61 72 74 75 72 | 65 2c 41 72 72 69 76 61 |Departur|e,Arriva|
|00004510| 6c 2c 4d 6f 76 65 43 6f | 75 6e 74 0d 47 6c 6f 62 |l,MoveCo|unt.Glob|
|00004520| 61 6c 20 43 6f 6c 6f 72 | 4f 66 50 69 65 63 65 73 |al Color|OfPieces|
|00004530| 2c 48 61 6c 66 4d 6f 76 | 65 2c 50 6c 61 79 4d 6f |,HalfMov|e,PlayMo|
|00004540| 64 65 2c 54 68 65 50 61 | 63 6b 65 74 2c 50 61 63 |de,ThePa|cket,Pac|
|00004550| 6b 65 74 54 6f 52 65 73 | 65 6e 64 0d 47 6c 6f 62 |ketToRes|end.Glob|
|00004560| 61 6c 20 43 6c 6f 63 6b | 46 6c 61 67 2c 53 65 63 |al Clock|Flag,Sec|
|00004570| 6f 6e 64 73 4f 66 50 6c | 61 79 69 6e 67 54 69 6d |ondsOfPl|ayingTim|
|00004580| 65 2c 41 43 4b 46 6c 61 | 67 0d 47 6c 6f 62 61 6c |e,ACKFla|g.Global|
|00004590| 20 52 65 73 65 74 47 61 | 6d 65 2c 53 74 61 72 74 | ResetGa|me,Start|
|000045a0| 69 6e 67 54 72 61 6e 73 | 6d 69 73 73 69 6f 6e 54 |ingTrans|missionT|
|000045b0| 69 6d 65 2c 4d 79 4d 6f | 76 65 46 6c 61 67 0d 47 |ime,MyMo|veFlag.G|
|000045c0| 6c 6f 62 61 6c 20 50 6c | 61 79 69 6e 67 54 69 6d |lobal Pl|ayingTim|
|000045d0| 65 41 72 72 61 79 2c 53 | 74 61 72 74 69 6e 67 54 |eArray,S|tartingT|
|000045e0| 69 6d 65 41 72 72 61 79 | 2c 43 6c 6f 63 6b 52 75 |imeArray|,ClockRu|
|000045f0| 6e 6e 69 6e 67 46 6c 61 | 67 41 72 72 61 79 0d 47 |nningFla|gArray.G|
|00004600| 6c 6f 62 61 6c 20 4d 41 | 43 74 6f 4d 41 43 2c 53 |lobal MA|CtoMAC,S|
|00004610| 69 6e 67 6c 65 4d 41 43 | 2c 43 61 70 74 75 72 65 |ingleMAC|,Capture|
|00004620| 4d 6f 76 65 46 6c 61 67 | 2c 4e 65 77 4d 6f 76 65 |MoveFlag|,NewMove|
|00004630| 2c 50 6c 61 79 43 6f 6c | 6f 72 0d 47 6c 6f 62 61 |,PlayCol|or.Globa|
|00004640| 6c 20 4c 65 67 61 6c 4d | 6f 76 65 53 74 72 69 6e |l LegalM|oveStrin|
|00004650| 67 0d 70 75 74 20 66 61 | 6c 73 65 20 69 6e 74 6f |g.put fa|lse into|
|00004660| 20 52 65 73 65 74 47 61 | 6d 65 0d 49 46 20 42 75 | ResetGa|me.IF Bu|
|00004670| 74 74 6f 6e 53 71 75 61 | 72 65 20 69 73 20 65 6d |ttonSqua|re is em|
|00004680| 70 74 79 20 54 48 45 4e | 0d 70 75 74 20 65 6d 70 |pty THEN|.put emp|
|00004690| 74 79 20 69 6e 74 6f 20 | 66 69 65 6c 64 20 22 4d |ty into |field "M|
|000046a0| 65 73 73 61 67 65 20 49 | 6e 22 0d 70 75 74 20 22 |essage I|n".put "|
|000046b0| 48 4e 43 20 2d 20 4d 6f | 76 65 20 49 73 20 45 6d |HNC - Mo|ve Is Em|
|000046c0| 70 74 79 20 4f 72 20 4e | 6f 74 20 43 6f 6d 70 6c |pty Or N|ot Compl|
|000046d0| 65 74 65 20 21 21 22 20 | 69 6e 74 6f 20 66 69 65 |ete !!" |into fie|
|000046e0| 6c 64 20 22 4d 65 73 73 | 61 67 65 20 49 6e 22 0d |ld "Mess|age In".|
|000046f0| 45 4c 53 45 0d 73 65 74 | 20 74 68 65 20 68 69 6c |ELSE.set| the hil|
|00004700| 69 74 65 20 6f 66 20 62 | 61 63 6b 67 72 6f 75 6e |ite of b|ackgroun|
|00004710| 64 20 62 75 74 74 6f 6e | 20 44 65 70 61 72 74 75 |d button| Departu|
|00004720| 72 65 20 74 6f 20 66 61 | 6c 73 65 0d 73 65 74 20 |re to fa|lse.set |
|00004730| 74 68 65 20 68 69 6c 69 | 74 65 20 6f 66 20 62 61 |the hili|te of ba|
|00004740| 63 6b 67 72 6f 75 6e 64 | 20 62 75 74 74 6f 6e 20 |ckground| button |
|00004750| 41 72 72 69 76 61 6c 20 | 74 6f 20 66 61 6c 73 65 |Arrival |to false|
|00004760| 0d 49 46 20 43 61 70 74 | 75 72 65 4d 6f 76 65 46 |.IF Capt|ureMoveF|
|00004770| 6c 61 67 20 54 48 45 4e | 0d 70 75 74 20 22 78 22 |lag THEN|.put "x"|
|00004780| 20 69 6e 74 6f 20 43 6f | 6e 6e 65 63 74 6f 72 0d | into Co|nnector.|
|00004790| 45 4c 53 45 0d 70 75 74 | 20 22 2d 22 20 69 6e 74 |ELSE.put| "-" int|
|000047a0| 6f 20 43 6f 6e 6e 65 63 | 74 6f 72 0d 45 6e 64 20 |o Connec|tor.End |
|000047b0| 49 46 0d 70 75 74 20 44 | 65 70 61 72 74 75 72 65 |IF.put D|eparture|
|000047c0| 20 26 20 43 6f 6e 6e 65 | 63 74 6f 72 20 26 20 41 | & Conne|ctor & A|
|000047d0| 72 72 69 76 61 6c 20 69 | 6e 74 6f 20 4e 65 77 4d |rrival i|nto NewM|
|000047e0| 6f 76 65 0d 49 46 20 43 | 6c 6f 63 6b 46 6c 61 67 |ove.IF C|lockFlag|
|000047f0| 20 69 73 20 74 72 75 65 | 20 54 48 45 4e 0d 70 75 | is true| THEN.pu|
|00004800| 74 20 63 68 61 72 20 31 | 20 74 6f 20 32 20 6f 66 |t char 1| to 2 of|
|00004810| 20 62 6b 67 6e 64 20 66 | 6c 64 20 22 43 6c 6f 63 | bkgnd f|ld "Cloc|
|00004820| 6b 31 22 20 69 6e 74 6f | 20 43 68 6f 75 72 73 0d |k1" into| Chours.|
|00004830| 70 75 74 20 63 68 61 72 | 20 34 20 74 6f 20 35 20 |put char| 4 to 5 |
|00004840| 6f 66 20 62 6b 67 6e 64 | 20 66 6c 64 20 22 43 6c |of bkgnd| fld "Cl|
|00004850| 6f 63 6b 31 22 20 69 6e | 74 6f 20 43 6d 69 6e 73 |ock1" in|to Cmins|
|00004860| 0d 70 75 74 20 63 68 61 | 72 20 37 20 74 6f 20 38 |.put cha|r 7 to 8|
|00004870| 20 6f 66 20 62 6b 67 6e | 64 20 66 6c 64 20 22 43 | of bkgn|d fld "C|
|00004880| 6c 6f 63 6b 31 22 20 69 | 6e 74 6f 20 43 73 65 63 |lock1" i|nto Csec|
|00004890| 73 0d 70 75 74 20 22 2a | 22 20 26 20 28 33 36 30 |s.put "*|" & (360|
|000048a0| 30 2a 43 68 6f 75 72 73 | 20 2b 20 36 30 2a 43 6d |0*Chours| + 60*Cm|
|000048b0| 69 6e 73 20 2b 20 43 73 | 65 63 73 29 20 69 6e 74 |ins + Cs|ecs) int|
|000048c0| 6f 20 43 6c 6f 63 6b 44 | 61 74 61 0d 45 4c 53 45 |o ClockD|ata.ELSE|
|000048d0| 0d 70 75 74 20 65 6d 70 | 74 79 20 69 6e 74 6f 20 |.put emp|ty into |
|000048e0| 43 6c 6f 63 6b 44 61 74 | 61 0d 45 4e 44 20 49 46 |ClockDat|a.END IF|
|000048f0| 0d 53 61 76 65 4d 6f 76 | 65 49 6e 47 61 6d 65 53 |.SaveMov|eInGameS|
|00004900| 63 6f 72 65 20 4e 65 77 | 4d 6f 76 65 0d 70 75 74 |core New|Move.put|
|00004910| 20 63 68 61 72 20 31 20 | 6f 66 20 50 6c 61 79 43 | char 1 |of PlayC|
|00004920| 6f 6c 6f 72 20 26 20 4e | 65 77 4d 6f 76 65 20 26 |olor & N|ewMove &|
|00004930| 20 43 6c 6f 63 6b 44 61 | 74 61 20 69 6e 74 6f 20 | ClockDa|ta into |
|00004940| 4d 6f 76 65 44 61 74 61 | 0d 70 75 74 20 22 4d 22 |MoveData|.put "M"|
|00004950| 20 69 6e 74 6f 20 50 61 | 63 6b 65 74 54 79 70 65 | into Pa|cketType|
|00004960| 0d 70 75 74 20 65 6d 70 | 74 79 20 69 6e 74 6f 20 |.put emp|ty into |
|00004970| 53 65 71 4e 75 6d 0d 42 | 75 69 6c 64 41 50 61 63 |SeqNum.B|uildAPac|
|00004980| 6b 65 74 20 53 65 71 4e | 75 6d 2c 50 61 63 6b 65 |ket SeqN|um,Packe|
|00004990| 74 54 79 70 65 2c 4d 6f | 76 65 44 61 74 61 0d 70 |tType,Mo|veData.p|
|000049a0| 75 74 20 54 68 65 50 61 | 63 6b 65 74 20 69 6e 74 |ut ThePa|cket int|
|000049b0| 6f 20 50 61 63 6b 65 74 | 54 6f 52 65 73 65 6e 64 |o Packet|ToResend|
|000049c0| 0d 49 46 20 50 6c 61 79 | 4d 6f 64 65 20 3d 20 4d |.IF Play|Mode = M|
|000049d0| 41 43 74 6f 4d 41 43 20 | 54 48 45 4e 0d 70 75 74 |ACtoMAC |THEN.put|
|000049e0| 20 66 61 6c 73 65 20 69 | 6e 74 6f 20 4d 79 4d 6f | false i|nto MyMo|
|000049f0| 76 65 46 6c 61 67 0d 49 | 46 20 63 68 61 72 20 31 |veFlag.I|F char 1|
|00004a00| 20 74 6f 20 33 20 6f 66 | 20 66 69 65 6c 64 20 22 | to 3 of| field "|
|00004a10| 4d 65 73 73 61 67 65 20 | 49 6e 22 20 3d 20 22 48 |Message |In" = "H|
|00004a20| 4e 43 22 20 54 48 45 4e | 0d 70 75 74 20 65 6d 70 |NC" THEN|.put emp|
|00004a30| 74 79 20 69 6e 74 6f 20 | 66 69 65 6c 64 20 22 4d |ty into |field "M|
|00004a40| 65 73 73 61 67 65 20 49 | 6e 22 0d 45 6e 64 20 49 |essage I|n".End I|
|00004a50| 46 0d 70 75 74 20 65 6d | 70 74 79 20 69 6e 74 6f |F.put em|pty into|
|00004a60| 20 66 69 65 6c 64 20 22 | 4d 65 73 73 61 67 65 20 | field "|Message |
|00004a70| 4f 75 74 22 0d 70 75 74 | 20 22 48 4e 43 20 2d 20 |Out".put| "HNC - |
|00004a80| 53 65 6e 64 69 6e 67 20 | 6d 6f 76 65 2e 2e 2e 2e |Sending |move....|
|00004a90| 2e 2e 2e 22 20 26 20 4e | 65 77 4d 6f 76 65 20 69 |..." & N|ewMove i|
|00004aa0| 6e 74 6f 20 66 69 65 6c | 64 20 22 4d 65 73 73 61 |nto fiel|d "Messa|
|00004ab0| 67 65 20 4f 75 74 22 0d | 49 46 20 66 6c 64 20 22 |ge Out".|IF fld "|
|00004ac0| 57 61 74 63 68 4c 69 73 | 74 22 20 69 73 20 4e 4f |WatchLis|t" is NO|
|00004ad0| 54 20 65 6d 70 74 79 20 | 54 48 45 4e 0d 53 65 6e |T empty |THEN.Sen|
|00004ae0| 64 41 6c 6c 57 61 74 63 | 68 65 72 73 52 6f 75 74 |dAllWatc|hersRout|
|00004af0| 69 6e 65 20 54 68 65 50 | 61 63 6b 65 74 0d 45 6e |ine TheP|acket.En|
|00004b00| 64 20 49 46 0d 70 75 74 | 20 74 68 65 20 73 65 63 |d IF.put| the sec|
|00004b10| 6f 6e 64 73 20 69 6e 74 | 6f 20 53 74 61 72 74 69 |onds int|o Starti|
|00004b20| 6e 67 54 72 61 6e 73 6d | 69 73 73 69 6f 6e 54 69 |ngTransm|issionTi|
|00004b30| 6d 65 0d 70 75 74 20 66 | 61 6c 73 65 20 69 6e 74 |me.put f|alse int|
|00004b40| 6f 20 41 43 4b 46 6c 61 | 67 0d 53 65 6e 64 52 6f |o ACKFla|g.SendRo|
|00004b50| 75 74 69 6e 65 20 54 68 | 65 50 61 63 6b 65 74 0d |utine Th|ePacket.|
|00004b60| 2d 2d 20 54 65 6d 70 6f | 72 61 72 79 20 68 61 63 |-- Tempo|rary hac|
|00004b70| 6b 20 66 6f 72 20 65 6e | 66 6f 72 63 65 64 20 31 |k for en|forced 1|
|00004b80| 20 70 61 63 6b 65 74 2d | 61 74 2d 61 2d 74 69 6d | packet-|at-a-tim|
|00004b90| 65 0d 73 65 74 20 74 68 | 65 20 6c 6f 63 6b 74 65 |e.set th|e lockte|
|00004ba0| 78 74 20 6f 66 20 66 69 | 65 6c 64 20 22 4d 65 73 |xt of fi|eld "Mes|
|00004bb0| 73 61 67 65 20 4f 75 74 | 22 20 74 6f 20 74 72 75 |sage Out|" to tru|
|00004bc0| 65 0d 45 4e 44 20 49 46 | 0d 70 75 74 20 65 6d 70 |e.END IF|.put emp|
|00004bd0| 74 79 20 69 6e 74 6f 20 | 42 75 74 74 6f 6e 53 71 |ty into |ButtonSq|
|00004be0| 75 61 72 65 0d 45 6e 64 | 20 49 46 0d 45 6e 64 20 |uare.End| IF.End |
|00004bf0| 53 65 6e 64 54 68 65 4d | 6f 76 65 0d 0d 6f 6e 20 |SendTheM|ove..on |
|00004c00| 50 61 77 6e 50 72 6f 6d | 6f 74 69 6f 6e 0d 47 6c |PawnProm|otion.Gl|
|00004c10| 6f 62 61 6c 20 53 70 65 | 63 69 61 6c 4d 6f 76 65 |obal Spe|cialMove|
|00004c20| 53 74 72 69 6e 67 2c 54 | 6f 75 63 68 65 64 50 69 |String,T|ouchedPi|
|00004c30| 65 63 65 2c 45 64 69 74 | 50 69 65 63 65 2c 50 6c |ece,Edit|Piece,Pl|
|00004c40| 61 79 43 6f 6c 6f 72 0d | 49 46 20 54 6f 75 63 68 |ayColor.|IF Touch|
|00004c50| 65 64 50 69 65 63 65 20 | 3d 20 22 57 50 22 20 54 |edPiece |= "WP" T|
|00004c60| 48 45 4e 0d 73 68 6f 77 | 20 62 61 63 6b 67 72 6f |HEN.show| backgro|
|00004c70| 75 6e 64 20 62 75 74 74 | 6f 6e 20 22 57 4e 22 0d |und butt|on "WN".|
|00004c80| 73 68 6f 77 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |show bac|kground |
|00004c90| 62 75 74 74 6f 6e 20 22 | 57 42 22 0d 73 68 6f 77 |button "|WB".show|
|00004ca0| 20 62 61 63 6b 67 72 6f | 75 6e 64 20 62 75 74 74 | backgro|und butt|
|00004cb0| 6f 6e 20 22 57 52 22 0d | 73 68 6f 77 20 62 61 63 |on "WR".|show bac|
|00004cc0| 6b 67 72 6f 75 6e 64 20 | 62 75 74 74 6f 6e 20 22 |kground |button "|
|00004cd0| 57 51 22 0d 45 4c 53 45 | 0d 68 69 64 65 20 66 69 |WQ".ELSE|.hide fi|
|00004ce0| 65 6c 64 20 22 4f 70 70 | 6f 6e 65 6e 74 22 0d 73 |eld "Opp|onent".s|
|00004cf0| 68 6f 77 20 62 61 63 6b | 67 72 6f 75 6e 64 20 62 |how back|ground b|
|00004d00| 75 74 74 6f 6e 20 22 42 | 4e 22 0d 73 68 6f 77 20 |utton "B|N".show |
|00004d10| 62 61 63 6b 67 72 6f 75 | 6e 64 20 62 75 74 74 6f |backgrou|nd butto|
|00004d20| 6e 20 22 42 42 22 0d 73 | 68 6f 77 20 62 61 63 6b |n "BB".s|how back|
|00004d30| 67 72 6f 75 6e 64 20 62 | 75 74 74 6f 6e 20 22 42 |ground b|utton "B|
|00004d40| 52 22 0d 73 68 6f 77 20 | 62 61 63 6b 67 72 6f 75 |R".show |backgrou|
|00004d50| 6e 64 20 62 75 74 74 6f | 6e 20 22 42 51 22 0d 45 |nd butto|n "BQ".E|
|00004d60| 6e 64 20 49 46 0d 70 75 | 74 20 65 6d 70 74 79 20 |nd IF.pu|t empty |
|00004d70| 69 6e 74 6f 20 45 64 69 | 74 50 69 65 63 65 0d 73 |into Edi|tPiece.s|
|00004d80| 68 6f 77 20 62 6b 67 6e | 64 20 62 74 6e 20 22 43 |how bkgn|d btn "C|
|00004d90| 6c 69 63 6b 20 4f 6e 20 | 50 69 65 63 65 20 54 6f |lick On |Piece To|
|00004da0| 20 50 72 6f 6d 6f 74 65 | 21 22 0d 52 65 70 65 61 | Promote|!".Repea|
|00004db0| 74 20 75 6e 74 69 6c 20 | 74 68 65 20 6d 6f 75 73 |t until |the mous|
|00004dc0| 65 63 6c 69 63 6b 0d 45 | 6e 64 20 52 65 70 65 61 |eclick.E|nd Repea|
|00004dd0| 74 0d 43 6c 69 63 6b 20 | 61 74 20 74 68 65 20 6d |t.Click |at the m|
|00004de0| 6f 75 73 65 6c 6f 63 0d | 49 46 20 45 64 69 74 50 |ouseloc.|IF EditP|
|00004df0| 69 65 63 65 20 69 73 20 | 65 6d 70 74 79 20 54 48 |iece is |empty TH|
|00004e00| 45 4e 0d 70 75 74 20 63 | 68 61 72 20 31 20 6f 66 |EN.put c|har 1 of|
|00004e10| 20 50 6c 61 79 43 6f 6c | 6f 72 20 26 20 22 51 22 | PlayCol|or & "Q"|
|00004e20| 20 69 6e 74 6f 20 45 64 | 69 74 50 69 65 63 65 0d | into Ed|itPiece.|
|00004e30| 45 6e 64 20 49 46 0d 68 | 69 64 65 20 62 6b 67 6e |End IF.h|ide bkgn|
|00004e40| 64 20 62 74 6e 20 22 43 | 6c 69 63 6b 20 4f 6e 20 |d btn "C|lick On |
|00004e50| 50 69 65 63 65 20 54 6f | 20 50 72 6f 6d 6f 74 65 |Piece To| Promote|
|00004e60| 21 22 0d 48 69 64 65 54 | 68 65 45 64 69 74 50 69 |!".HideT|heEditPi|
|00004e70| 65 63 65 73 0d 70 75 74 | 20 22 3d 22 20 26 20 63 |eces.put| "=" & c|
|00004e80| 68 61 72 20 32 20 6f 66 | 20 45 64 69 74 50 69 65 |har 2 of| EditPie|
|00004e90| 63 65 20 69 6e 74 6f 20 | 53 70 65 63 69 61 6c 4d |ce into |SpecialM|
|00004ea0| 6f 76 65 53 74 72 69 6e | 67 0d 45 6e 64 20 50 61 |oveStrin|g.End Pa|
|00004eb0| 77 6e 50 72 6f 6d 6f 74 | 69 6f 6e 0d 0d 6f 6e 20 |wnPromot|ion..on |
|00004ec0| 53 61 76 65 4d 6f 76 65 | 49 6e 47 61 6d 65 53 63 |SaveMove|InGameSc|
|00004ed0| 6f 72 65 20 54 68 65 4d | 6f 76 65 0d 47 6c 6f 62 |ore TheM|ove.Glob|
|00004ee0| 61 6c 20 48 61 6c 66 4d | 6f 76 65 2c 4d 6f 76 65 |al HalfM|ove,Move|
|00004ef0| 43 6f 75 6e 74 2c 54 6f | 75 63 68 65 64 50 69 65 |Count,To|uchedPie|
|00004f00| 63 65 2c 4e 65 77 4d 6f | 76 65 2c 53 70 65 63 69 |ce,NewMo|ve,Speci|
|00004f10| 61 6c 4d 6f 76 65 53 74 | 72 69 6e 67 0d 47 6c 6f |alMoveSt|ring.Glo|
|00004f20| 62 61 6c 20 43 61 70 74 | 75 72 65 4d 6f 76 65 46 |bal Capt|ureMoveF|
|00004f30| 6c 61 67 2c 50 69 65 63 | 65 4d 61 70 2c 50 6c 61 |lag,Piec|eMap,Pla|
|00004f40| 79 43 6f 6c 6f 72 2c 4c | 65 67 61 6c 4d 6f 76 65 |yColor,L|egalMove|
|00004f50| 53 74 72 69 6e 67 0d 47 | 6c 6f 62 61 6c 20 52 65 |String.G|lobal Re|
|00004f60| 74 61 69 6e 65 64 43 6f | 6c 6f 72 2c 50 6c 61 79 |tainedCo|lor,Play|
|00004f70| 4d 6f 64 65 2c 4d 41 43 | 74 6f 4d 41 43 2c 43 4f |Mode,MAC|toMAC,CO|
|00004f80| 4d 50 55 54 45 52 0d 49 | 46 20 63 68 61 72 20 32 |MPUTER.I|F char 2|
|00004f90| 20 6f 66 20 54 6f 75 63 | 68 65 64 50 69 65 63 65 | of Touc|hedPiece|
|00004fa0| 20 3d 20 22 4b 22 20 54 | 48 45 4e 0d 49 46 20 54 | = "K" T|HEN.IF T|
|00004fb0| 68 65 4d 6f 76 65 20 3d | 20 22 65 31 2d 67 31 22 |heMove =| "e1-g1"|
|00004fc0| 20 4f 52 20 54 68 65 4d | 6f 76 65 20 3d 20 22 65 | OR TheM|ove = "e|
|00004fd0| 38 2d 67 38 22 20 54 48 | 45 4e 20 70 75 74 20 22 |8-g8" TH|EN put "|
|00004fe0| 4f 2d 4f 20 20 20 22 20 | 69 6e 74 6f 20 54 68 65 |O-O " |into The|
|00004ff0| 4d 6f 76 65 0d 49 46 20 | 54 68 65 4d 6f 76 65 20 |Move.IF |TheMove |
|00005000| 3d 20 22 65 31 2d 63 31 | 22 20 4f 52 20 54 68 65 |= "e1-c1|" OR The|
|00005010| 4d 6f 76 65 20 3d 20 22 | 65 38 2d 63 38 22 20 54 |Move = "|e8-c8" T|
|00005020| 48 45 4e 20 70 75 74 20 | 22 4f 2d 4f 2d 4f 22 20 |HEN put |"O-O-O" |
|00005030| 69 6e 74 6f 20 54 68 65 | 4d 6f 76 65 0d 70 75 74 |into The|Move.put|
|00005040| 20 54 68 65 4d 6f 76 65 | 20 69 6e 74 6f 20 4e 65 | TheMove| into Ne|
|00005050| 77 4d 6f 76 65 0d 45 6e | 64 20 49 46 0d 49 46 20 |wMove.En|d IF.IF |
|00005060| 63 68 61 72 20 32 20 6f | 66 20 54 6f 75 63 68 65 |char 2 o|f Touche|
|00005070| 64 50 69 65 63 65 20 3d | 20 22 50 22 20 54 48 45 |dPiece =| "P" THE|
|00005080| 4e 0d 70 75 74 20 63 68 | 61 72 20 32 20 6f 66 20 |N.put ch|ar 2 of |
|00005090| 54 68 65 4d 6f 76 65 20 | 69 6e 74 6f 20 43 68 65 |TheMove |into Che|
|000050a0| 73 73 52 61 6e 6b 31 0d | 70 75 74 20 63 68 61 72 |ssRank1.|put char|
|000050b0| 20 35 20 6f 66 20 54 68 | 65 4d 6f 76 65 20 69 6e | 5 of Th|eMove in|
|000050c0| 74 6f 20 43 68 65 73 73 | 52 61 6e 6b 32 0d 70 75 |to Chess|Rank2.pu|
|000050d0| 74 20 63 68 61 72 20 31 | 20 6f 66 20 54 68 65 4d |t char 1| of TheM|
|000050e0| 6f 76 65 20 69 6e 74 6f | 20 43 68 65 73 73 46 69 |ove into| ChessFi|
|000050f0| 6c 65 31 0d 70 75 74 20 | 63 68 61 72 20 34 20 6f |le1.put |char 4 o|
|00005100| 66 20 54 68 65 4d 6f 76 | 65 20 69 6e 74 6f 20 43 |f TheMov|e into C|
|00005110| 68 65 73 73 46 69 6c 65 | 32 0d 49 46 20 28 54 6f |hessFile|2.IF (To|
|00005120| 75 63 68 65 64 50 69 65 | 63 65 20 3d 20 22 42 50 |uchedPie|ce = "BP|
|00005130| 22 20 41 4e 44 20 43 68 | 65 73 73 52 61 6e 6b 32 |" AND Ch|essRank2|
|00005140| 20 3d 20 31 29 20 4f 52 | 20 c2 0d 28 54 6f 75 63 | = 1) OR| ..(Touc|
|00005150| 68 65 64 50 69 65 63 65 | 20 3d 20 22 57 50 22 20 |hedPiece| = "WP" |
|00005160| 41 4e 44 20 43 68 65 73 | 73 52 61 6e 6b 32 20 3d |AND Ches|sRank2 =|
|00005170| 20 38 29 20 54 48 45 4e | 0d 49 46 20 28 50 4c 61 | 8) THEN|.IF (PLa|
|00005180| 79 4d 6f 64 65 20 3c 3e | 20 43 4f 4d 50 55 54 45 |yMode <>| COMPUTE|
|00005190| 52 29 20 4f 52 20 28 50 | 6c 61 79 43 6f 6c 6f 72 |R) OR (P|layColor|
|000051a0| 20 3d 20 22 57 48 49 54 | 45 22 29 20 54 48 45 4e | = "WHIT|E") THEN|
|000051b0| 0d 50 61 77 6e 50 72 6f | 6d 6f 74 69 6f 6e 0d 70 |.PawnPro|motion.p|
|000051c0| 75 74 20 54 68 65 4d 6f | 76 65 20 26 20 53 70 65 |ut TheMo|ve & Spe|
|000051d0| 63 69 61 6c 4d 6f 76 65 | 53 74 72 69 6e 67 20 69 |cialMove|String i|
|000051e0| 6e 74 6f 20 54 68 65 4d | 6f 76 65 0d 49 46 20 50 |nto TheM|ove.IF P|
|000051f0| 6c 61 79 4d 6f 64 65 20 | 3d 20 4d 61 63 54 6f 4d |layMode |= MacToM|
|00005200| 41 43 20 54 48 45 4e 0d | 70 75 74 20 50 6c 61 79 |AC THEN.|put Play|
|00005210| 63 6f 6c 6f 72 20 69 6e | 74 6f 20 52 65 74 61 69 |color in|to Retai|
|00005220| 6e 65 64 43 6f 6c 6f 72 | 0d 45 6e 64 20 49 46 0d |nedColor|.End IF.|
|00005230| 70 75 74 20 4c 65 67 61 | 6c 4d 6f 76 65 58 66 63 |put Lega|lMoveXfc|
|00005240| 6e 50 28 50 69 65 63 65 | 4d 61 70 2c 54 68 65 4d |nP(Piece|Map,TheM|
|00005250| 6f 76 65 2c 52 65 74 61 | 69 6e 65 64 43 6f 6c 6f |ove,Reta|inedColo|
|00005260| 72 29 20 69 6e 74 6f 20 | 4c 65 67 61 6c 4d 6f 76 |r) into |LegalMov|
|00005270| 65 53 74 72 69 6e 67 0d | 70 75 74 20 54 68 65 4d |eString.|put TheM|
|00005280| 6f 76 65 20 69 6e 74 6f | 20 4e 65 77 4d 6f 76 65 |ove into| NewMove|
|00005290| 0d 45 4e 44 20 49 46 0d | 45 6e 64 20 49 46 0d 49 |.END IF.|End IF.I|
|000052a0| 46 20 43 68 65 73 73 52 | 61 6e 6b 31 20 3d 20 28 |F ChessR|ank1 = (|
|000052b0| 36 20 2d 20 48 61 6c 66 | 4d 6f 76 65 29 20 54 48 |6 - Half|Move) TH|
|000052c0| 45 4e 0d 49 46 20 28 43 | 68 65 73 73 46 69 6c 65 |EN.IF (C|hessFile|
|000052d0| 31 20 3c 3e 20 43 68 65 | 73 73 46 69 6c 65 32 29 |1 <> Che|ssFile2)|
|000052e0| 20 41 4e 44 20 28 43 61 | 70 74 75 72 65 4d 6f 76 | AND (Ca|ptureMov|
|000052f0| 65 46 6c 61 67 20 69 73 | 20 46 61 6c 73 65 29 20 |eFlag is| False) |
|00005300| 54 48 45 4e 0d 70 75 74 | 20 54 68 65 4d 6f 76 65 |THEN.put| TheMove|
|00005310| 20 26 20 22 2f 65 70 22 | 20 69 6e 74 6f 20 54 68 | & "/ep"| into Th|
|00005320| 65 4d 6f 76 65 0d 70 75 | 74 20 22 78 22 20 69 6e |eMove.pu|t "x" in|
|00005330| 74 6f 20 63 68 61 72 20 | 33 20 6f 66 20 54 68 65 |to char |3 of The|
|00005340| 4d 6f 76 65 0d 70 75 74 | 20 54 68 65 4d 6f 76 65 |Move.put| TheMove|
|00005350| 20 69 6e 74 6f 20 4e 65 | 77 4d 6f 76 65 0d 45 6e | into Ne|wMove.En|
|00005360| 64 20 49 46 0d 45 6e 64 | 20 49 46 0d 45 6e 64 20 |d IF.End| IF.End |
|00005370| 49 46 0d 49 46 20 4c 65 | 67 61 6c 4d 6f 76 65 53 |IF.IF Le|galMoveS|
|00005380| 74 72 69 6e 67 20 3d 20 | 22 4c 65 67 61 6c 61 6e |tring = |"Legalan|
|00005390| 64 43 68 65 63 6b 22 20 | 54 48 45 4e 0d 70 75 74 |dCheck" |THEN.put|
|000053a0| 20 22 2b 22 20 61 66 74 | 65 72 20 4e 65 77 4d 6f | "+" aft|er NewMo|
|000053b0| 76 65 0d 70 75 74 20 22 | 2b 22 20 61 66 74 65 72 |ve.put "|+" after|
|000053c0| 20 54 68 65 4d 6f 76 65 | 0d 70 75 74 20 22 48 4e | TheMove|.put "HN|
|000053d0| 43 20 2d 20 4f 70 70 6f | 6e 65 6e 74 20 69 73 20 |C - Oppo|nent is |
|000053e0| 6e 6f 77 20 69 6e 20 63 | 68 65 63 6b 21 22 20 69 |now in c|heck!" i|
|000053f0| 6e 74 6f 20 66 69 65 6c | 64 20 22 4d 65 73 73 61 |nto fiel|d "Messa|
|00005400| 67 65 20 49 6e 22 0d 77 | 61 69 74 20 66 6f 72 20 |ge In".w|ait for |
|00005410| 32 20 73 65 63 6f 6e 64 | 73 0d 70 75 74 20 65 6d |2 second|s.put em|
|00005420| 70 74 79 20 69 6e 74 6f | 20 4c 65 67 61 6c 4d 6f |pty into| LegalMo|
|00005430| 76 65 53 74 72 69 6e 67 | 0d 70 75 74 20 65 6d 70 |veString|.put emp|
|00005440| 74 79 20 69 6e 74 6f 20 | 66 69 65 6c 64 20 22 4d |ty into |field "M|
|00005450| 65 73 73 61 67 65 20 49 | 6e 22 0d 45 6e 64 20 49 |essage I|n".End I|
|00005460| 46 0d 49 46 20 48 61 6c | 66 4d 6f 76 65 20 3d 20 |F.IF Hal|fMove = |
|00005470| 31 20 54 68 65 6e 0d 70 | 75 74 20 33 20 2d 20 74 |1 Then.p|ut 3 - t|
|00005480| 68 65 20 6c 65 6e 67 74 | 68 20 6f 66 20 4d 6f 76 |he lengt|h of Mov|
|00005490| 65 43 6f 75 6e 74 20 69 | 6e 74 6f 20 43 6f 6c 46 |eCount i|nto ColF|
|000054a0| 61 63 74 6f 72 0d 70 75 | 74 20 63 68 61 72 20 31 |actor.pu|t char 1|
|000054b0| 20 74 6f 20 43 6f 6c 46 | 61 63 74 6f 72 20 6f 66 | to ColF|actor of|
|000054c0| 20 22 20 20 22 20 69 6e | 74 6f 20 43 6f 6c 53 70 | " " in|to ColSp|
|000054d0| 61 63 65 73 0d 70 75 74 | 20 43 6f 6c 53 70 61 63 |aces.put| ColSpac|
|000054e0| 65 73 20 26 20 4d 6f 76 | 65 43 6f 75 6e 74 20 26 |es & Mov|eCount &|
|000054f0| 20 22 2e 22 20 26 20 73 | 70 61 63 65 20 26 20 54 | "." & s|pace & T|
|00005500| 68 65 4d 6f 76 65 20 69 | 6e 74 6f 20 53 63 6f 72 |heMove i|nto Scor|
|00005510| 65 4c 69 6e 65 0d 70 75 | 74 20 32 34 20 2d 20 74 |eLine.pu|t 24 - t|
|00005520| 68 65 20 6c 65 6e 67 74 | 68 20 6f 66 20 53 63 6f |he lengt|h of Sco|
|00005530| 72 65 4c 69 6e 65 20 69 | 6e 74 6f 20 46 69 6c 6c |reLine i|nto Fill|
|00005540| 53 70 61 63 65 4e 6f 0d | 52 65 70 65 61 74 20 46 |SpaceNo.|Repeat F|
|00005550| 69 6c 6c 53 70 61 63 65 | 4e 6f 0d 70 75 74 20 73 |illSpace|No.put s|
|00005560| 70 61 63 65 20 61 66 74 | 65 72 20 53 63 6f 72 65 |pace aft|er Score|
|00005570| 4c 69 6e 65 0d 45 6e 64 | 20 52 65 70 65 61 74 0d |Line.End| Repeat.|
|00005580| 70 75 74 20 53 63 6f 72 | 65 6c 69 6e 65 20 69 6e |put Scor|eline in|
|00005590| 74 6f 20 6c 69 6e 65 20 | 4d 6f 76 65 43 6f 75 6e |to line |MoveCoun|
|000055a0| 74 20 6f 66 20 66 69 65 | 6c 64 20 22 47 61 6d 65 |t of fie|ld "Game|
|000055b0| 53 63 6f 72 65 22 0d 45 | 4c 53 45 0d 70 75 74 20 |Score".E|LSE.put |
|000055c0| 54 68 65 4d 6f 76 65 20 | 69 6e 74 6f 20 63 68 61 |TheMove |into cha|
|000055d0| 72 20 31 36 20 74 6f 20 | 32 34 20 6f 66 20 6c 69 |r 16 to |24 of li|
|000055e0| 6e 65 20 4d 6f 76 65 63 | 6f 75 6e 74 20 6f 66 20 |ne Movec|ount of |
|000055f0| c2 0d 66 69 65 6c 64 20 | 22 47 61 6d 65 53 63 6f |..field |"GameSco|
|00005600| 72 65 22 0d 45 6e 64 20 | 49 46 0d 73 65 6e 64 20 |re".End |IF.send |
|00005610| 6d 6f 75 73 65 55 70 20 | 74 6f 20 62 61 63 6b 67 |mouseUp |to backg|
|00005620| 72 6f 75 6e 64 20 62 75 | 74 74 6f 6e 20 22 70 6c |round bu|tton "pl|
|00005630| 61 79 22 0d 45 6e 64 20 | 53 61 76 65 4d 6f 76 65 |ay".End |SaveMove|
|00005640| 49 6e 47 61 6d 65 53 63 | 6f 72 65 0d 0d 6f 6e 20 |InGameSc|ore..on |
|00005650| 42 75 69 6c 64 54 68 65 | 4d 6f 76 65 0d 47 6c 6f |BuildThe|Move.Glo|
|00005660| 62 61 6c 20 42 75 74 74 | 6f 6e 53 71 75 61 72 65 |bal Butt|onSquare|
|00005670| 2c 46 69 72 73 74 48 61 | 6c 66 4f 66 4d 6f 76 65 |,FirstHa|lfOfMove|
|00005680| 2c 44 65 70 61 72 74 75 | 72 65 2c 41 72 72 69 76 |,Departu|re,Arriv|
|00005690| 61 6c 2c 43 6f 6c 6f 72 | 4d 61 70 0d 47 6c 6f 62 |al,Color|Map.Glob|
|000056a0| 61 6c 20 42 6f 61 72 64 | 53 71 75 61 72 65 73 2c |al Board|Squares,|
|000056b0| 50 69 65 63 65 4d 61 70 | 2c 4d 79 4d 6f 76 65 46 |PieceMap|,MyMoveF|
|000056c0| 6c 61 67 2c 50 6c 61 79 | 4d 6f 64 65 2c 50 6c 61 |lag,Play|Mode,Pla|
|000056d0| 79 43 6f 6c 6f 72 0d 47 | 6c 6f 62 61 6c 20 54 6f |yColor.G|lobal To|
|000056e0| 75 63 68 4d 6f 64 65 2c | 54 6f 75 63 68 65 64 50 |uchMode,|TouchedP|
|000056f0| 69 65 63 65 2c 4e 65 77 | 44 65 70 61 72 74 49 63 |iece,New|DepartIc|
|00005700| 6f 6e 2c 43 61 70 74 75 | 72 65 4d 6f 76 65 46 6c |on,Captu|reMoveFl|
|00005710| 61 67 0d 47 6c 6f 62 61 | 6c 20 4d 6f 76 65 4c 6f |ag.Globa|l MoveLo|
|00005720| 63 6b 65 64 46 6c 61 67 | 2c 4c 65 67 61 6c 46 65 |ckedFlag|,LegalFe|
|00005730| 61 74 75 72 65 46 6c 61 | 67 2c 4c 65 67 61 6c 4d |atureFla|g,LegalM|
|00005740| 6f 76 65 53 74 72 69 6e | 67 2c 53 69 6e 67 6c 65 |oveStrin|g,Single|
|00005750| 4d 61 63 0d 47 6c 6f 62 | 61 6c 20 52 65 74 61 69 |Mac.Glob|al Retai|
|00005760| 6e 65 64 43 6f 6c 6f 72 | 0d 70 75 74 20 74 72 75 |nedColor|.put tru|
|00005770| 65 20 69 6e 74 6f 20 54 | 6f 75 63 68 4d 6f 64 65 |e into T|ouchMode|
|00005780| 0d 49 46 20 50 6c 61 79 | 4d 6f 64 65 20 3d 20 22 |.IF Play|Mode = "|
|00005790| 4d 41 43 20 74 6f 20 4d | 41 43 22 20 54 48 45 4e |MAC to M|AC" THEN|
|000057a0| 0d 49 46 20 4e 4f 54 20 | 4d 79 4d 6f 76 65 46 6c |.IF NOT |MyMoveFl|
|000057b0| 61 67 20 54 48 45 4e 0d | 62 65 65 70 0d 70 75 74 |ag THEN.|beep.put|
|000057c0| 20 22 48 4e 43 2e 2e 2e | 73 6f 72 72 79 2c 20 69 | "HNC...|sorry, i|
|000057d0| 74 20 69 73 20 6e 6f 74 | 20 79 6f 75 72 20 74 75 |t is not| your tu|
|000057e0| 72 6e 20 74 6f 20 6d 6f | 76 65 21 22 20 69 6e 74 |rn to mo|ve!" int|
|000057f0| 6f 20 c2 0d 66 69 65 6c | 64 20 22 4d 65 73 73 61 |o ..fiel|d "Messa|
|00005800| 67 65 20 49 6e 22 0d 65 | 78 69 74 20 42 75 69 6c |ge In".e|xit Buil|
|00005810| 64 54 68 65 4d 6f 76 65 | 0d 45 6e 64 20 49 46 0d |dTheMove|.End IF.|
|00005820| 49 46 20 4d 6f 76 65 4c | 6f 63 6b 65 64 46 6c 61 |IF MoveL|ockedFla|
|00005830| 67 20 54 48 45 4e 0d 62 | 65 65 70 0d 70 75 74 20 |g THEN.b|eep.put |
|00005840| 22 48 4e 43 2e 2e 2e 63 | 61 6e 27 74 20 6d 6f 76 |"HNC...c|an't mov|
|00005850| 65 2c 20 77 61 69 74 69 | 6e 67 20 66 6f 72 20 6f |e, waiti|ng for o|
|00005860| 70 70 6f 6e 65 6e 74 20 | 74 6f 20 61 63 6b 6e 6f |pponent |to ackno|
|00005870| 77 6c 65 64 67 65 20 6d | 65 73 73 61 67 65 22 20 |wledge m|essage" |
|00005880| c2 0d 69 6e 74 6f 20 66 | 69 65 6c 64 20 22 4d 65 |..into f|ield "Me|
|00005890| 73 73 61 67 65 20 49 6e | 22 0d 65 78 69 74 20 42 |ssage In|".exit B|
|000058a0| 75 69 6c 64 54 68 65 4d | 6f 76 65 0d 45 6e 64 20 |uildTheM|ove.End |
|000058b0| 49 46 0d 45 6e 64 20 49 | 46 0d 49 46 20 46 69 72 |IF.End I|F.IF Fir|
|000058c0| 73 74 48 61 6c 66 4f 66 | 4d 6f 76 65 20 54 48 45 |stHalfOf|Move THE|
|000058d0| 4e 0d 70 75 74 20 6f 66 | 66 73 65 74 28 42 75 74 |N.put of|fset(But|
|000058e0| 74 6f 6e 53 71 75 61 72 | 65 2c 42 6f 61 72 64 53 |tonSquar|e,BoardS|
|000058f0| 71 75 61 72 65 73 29 20 | 69 6e 74 6f 20 49 6e 64 |quares) |into Ind|
|00005900| 65 78 0d 70 75 74 20 63 | 68 61 72 20 49 6e 64 65 |ex.put c|har Inde|
|00005910| 78 20 74 6f 20 49 6e 64 | 65 78 2b 31 20 6f 66 20 |x to Ind|ex+1 of |
|00005920| 50 69 65 63 65 4d 61 70 | 20 69 6e 74 6f 20 54 6f |PieceMap| into To|
|00005930| 75 63 68 65 64 50 69 65 | 63 65 0d 49 46 20 54 6f |uchedPie|ce.IF To|
|00005940| 75 63 68 65 64 50 69 65 | 63 65 20 3d 20 22 55 53 |uchedPie|ce = "US|
|00005950| 22 20 54 48 45 4e 0d 62 | 65 65 70 0d 65 78 69 74 |" THEN.b|eep.exit|
|00005960| 20 42 75 69 6c 64 54 68 | 65 4d 6f 76 65 0d 45 6e | BuildTh|eMove.En|
|00005970| 64 20 49 46 0d 73 65 74 | 20 74 68 65 20 68 69 6c |d IF.set| the hil|
|00005980| 69 74 65 20 6f 66 20 62 | 61 63 6b 67 72 6f 75 6e |ite of b|ackgroun|
|00005990| 64 20 62 75 74 74 6f 6e | 20 42 75 74 74 6f 6e 53 |d button| ButtonS|
|000059a0| 71 75 61 72 65 20 74 6f | 20 54 72 75 65 0d 70 75 |quare to| True.pu|
|000059b0| 74 20 63 68 61 72 20 49 | 6e 64 65 78 20 74 6f 20 |t char I|ndex to |
|000059c0| 49 6e 64 65 78 2b 31 20 | 6f 66 20 43 6f 6c 6f 72 |Index+1 |of Color|
|000059d0| 4d 61 70 20 69 6e 74 6f | 20 4e 65 77 44 65 70 61 |Map into| NewDepa|
|000059e0| 72 74 49 63 6f 6e 0d 70 | 75 74 20 42 75 74 74 6f |rtIcon.p|ut Butto|
|000059f0| 6e 53 71 75 61 72 65 20 | 69 6e 74 6f 20 44 65 70 |nSquare |into Dep|
|00005a00| 61 72 74 75 72 65 0d 70 | 75 74 20 22 66 61 6c 73 |arture.p|ut "fals|
|00005a10| 65 22 20 69 6e 74 6f 20 | 46 69 72 73 74 48 61 6c |e" into |FirstHal|
|00005a20| 66 4f 66 4d 6f 76 65 0d | 45 4c 53 45 0d 49 46 20 |fOfMove.|ELSE.IF |
|00005a30| 28 42 75 74 74 6f 6e 53 | 71 75 61 72 65 20 3c 3e |(ButtonS|quare <>|
|00005a40| 20 44 65 70 61 72 74 75 | 72 65 29 20 41 4e 44 20 | Departu|re) AND |
|00005a50| 28 4c 65 67 61 6c 46 65 | 61 74 75 72 65 46 6c 61 |(LegalFe|atureFla|
|00005a60| 67 20 69 73 20 74 72 75 | 65 29 20 54 48 45 4e 0d |g is tru|e) THEN.|
|00005a70| 70 75 74 20 44 65 70 61 | 72 74 75 72 65 20 26 20 |put Depa|rture & |
|00005a80| 22 2d 22 20 26 20 42 75 | 74 74 6f 6e 53 71 75 61 |"-" & Bu|ttonSqua|
|00005a90| 72 65 20 69 6e 74 6f 20 | 74 65 73 74 6d 6f 76 65 |re into |testmove|
|00005aa0| 0d 70 75 74 20 4c 65 67 | 61 6c 4d 6f 76 65 58 66 |.put Leg|alMoveXf|
|00005ab0| 63 6e 50 28 50 69 65 63 | 65 4d 61 70 2c 74 65 73 |cnP(Piec|eMap,tes|
|00005ac0| 74 6d 6f 76 65 2c 50 6c | 61 79 43 6f 6c 6f 72 29 |tmove,Pl|ayColor)|
|00005ad0| 20 69 6e 74 6f 20 4c 65 | 67 61 6c 4d 6f 76 65 53 | into Le|galMoveS|
|00005ae0| 74 72 69 6e 67 0d 49 46 | 20 63 68 61 72 20 31 20 |tring.IF| char 1 |
|00005af0| 74 6f 20 35 20 6f 66 20 | 4c 65 67 61 6c 4d 6f 76 |to 5 of |LegalMov|
|00005b00| 65 53 74 72 69 6e 67 20 | 3c 3e 20 22 4c 65 67 61 |eString |<> "Lega|
|00005b10| 6c 22 20 54 48 45 4e 0d | 62 65 65 70 0d 41 6e 73 |l" THEN.|beep.Ans|
|00005b20| 77 65 72 20 4c 65 67 61 | 6c 4d 6f 76 65 53 74 72 |wer Lega|lMoveStr|
|00005b30| 69 6e 67 0d 45 4c 53 45 | 0d 49 46 20 50 6c 61 79 |ing.ELSE|.IF Play|
|00005b40| 4d 6f 64 65 20 3d 20 53 | 69 6e 67 6c 65 4d 61 63 |Mode = S|ingleMac|
|00005b50| 20 54 48 45 4e 0d 70 75 | 74 20 50 6c 61 79 43 6f | THEN.pu|t PlayCo|
|00005b60| 6c 6f 72 20 69 6e 74 6f | 20 52 65 74 61 69 6e 65 |lor into| Retaine|
|00005b70| 64 43 6f 6c 6f 72 0d 45 | 6e 64 20 49 46 0d 45 6e |dColor.E|nd IF.En|
|00005b80| 64 20 49 46 0d 45 6e 64 | 20 49 46 0d 49 46 20 28 |d IF.End| IF.IF (|
|00005b90| 42 75 74 74 6f 6e 53 71 | 75 61 72 65 20 3c 3e 20 |ButtonSq|uare <> |
|00005ba0| 44 65 70 61 72 74 75 72 | 65 29 20 41 4e 44 20 c2 |Departur|e) AND .|
|00005bb0| 0d 28 63 68 61 72 20 31 | 20 74 6f 20 35 20 6f 66 |.(char 1| to 5 of|
|00005bc0| 20 4c 65 67 61 6c 4d 6f | 76 65 53 74 72 69 6e 67 | LegalMo|veString|
|00005bd0| 20 3d 20 22 4c 65 67 61 | 6c 22 29 20 54 48 45 4e | = "Lega|l") THEN|
|00005be0| 0d 73 65 74 20 74 68 65 | 20 68 69 6c 69 74 65 20 |.set the| hilite |
|00005bf0| 6f 66 20 62 61 63 6b 67 | 72 6f 75 6e 64 20 62 75 |of backg|round bu|
|00005c00| 74 74 6f 6e 20 44 65 70 | 61 72 74 75 72 65 20 74 |tton Dep|arture t|
|00005c10| 6f 20 66 61 6c 73 65 0d | 70 75 74 20 6f 66 66 73 |o false.|put offs|
|00005c20| 65 74 28 42 75 74 74 6f | 6e 53 71 75 61 72 65 2c |et(Butto|nSquare,|
|00005c30| 42 6f 61 72 64 53 71 75 | 61 72 65 73 29 20 69 6e |BoardSqu|ares) in|
|00005c40| 74 6f 20 49 6e 64 65 78 | 0d 70 75 74 20 63 68 61 |to Index|.put cha|
|00005c50| 72 20 49 6e 64 65 78 20 | 74 6f 20 49 6e 64 65 78 |r Index |to Index|
|00005c60| 2b 31 20 6f 66 20 43 6f | 6c 6f 72 4d 61 70 20 69 |+1 of Co|lorMap i|
|00005c70| 6e 74 6f 20 54 68 65 43 | 6f 6c 6f 72 0d 70 75 74 |nto TheC|olor.put|
|00005c80| 20 63 68 61 72 20 49 6e | 64 65 78 20 74 6f 20 49 | char In|dex to I|
|00005c90| 6e 64 65 78 2b 31 20 6f | 66 20 50 69 65 63 65 4d |ndex+1 o|f PieceM|
|00005ca0| 61 70 20 69 6e 74 6f 20 | 4f 63 63 75 70 79 69 6e |ap into |Occupyin|
|00005cb0| 67 50 69 65 63 65 0d 70 | 75 74 20 28 4f 63 63 75 |gPiece.p|ut (Occu|
|00005cc0| 70 79 69 6e 67 50 69 65 | 63 65 20 3c 3e 20 22 55 |pyingPie|ce <> "U|
|00005cd0| 53 22 29 20 69 6e 74 6f | 20 43 61 70 74 75 72 65 |S") into| Capture|
|00005ce0| 4d 6f 76 65 46 6c 61 67 | 0d 70 75 74 20 54 6f 75 |MoveFlag|.put Tou|
|00005cf0| 63 68 65 64 50 69 65 63 | 65 20 26 20 54 68 65 43 |chedPiec|e & TheC|
|00005d00| 6f 6c 6f 72 20 69 6e 74 | 6f 20 4e 65 77 41 72 72 |olor int|o NewArr|
|00005d10| 69 76 65 49 63 6f 6e 0d | 73 65 74 20 74 68 65 20 |iveIcon.|set the |
|00005d20| 69 63 6f 6e 20 6f 66 20 | 62 61 63 6b 67 72 6f 75 |icon of |backgrou|
|00005d30| 6e 64 20 62 75 74 74 6f | 6e 20 44 65 70 61 72 74 |nd butto|n Depart|
|00005d40| 75 72 65 20 74 6f 20 4e | 65 77 44 65 70 61 72 74 |ure to N|ewDepart|
|00005d50| 49 63 6f 6e 0d 73 65 74 | 20 74 68 65 20 69 63 6f |Icon.set| the ico|
|00005d60| 6e 20 6f 66 20 62 61 63 | 6b 67 72 6f 75 6e 64 20 |n of bac|kground |
|00005d70| 62 75 74 74 6f 6e 20 42 | 75 74 74 6f 6e 53 71 75 |button B|uttonSqu|
|00005d80| 61 72 65 20 74 6f 20 4e | 65 77 41 72 72 69 76 65 |are to N|ewArrive|
|00005d90| 49 63 6f 6e 0d 50 75 74 | 20 42 75 74 74 6f 6e 53 |Icon.Put| ButtonS|
|00005da0| 71 75 61 72 65 20 69 6e | 74 6f 20 41 72 72 69 76 |quare in|to Arriv|
|00005db0| 61 6c 0d 70 75 74 20 22 | 74 72 75 65 22 20 69 6e |al.put "|true" in|
|00005dc0| 74 6f 20 46 69 72 73 74 | 48 61 6c 66 4f 66 4d 6f |to First|HalfOfMo|
|00005dd0| 76 65 0d 53 65 6e 64 54 | 68 65 4d 6f 76 65 0d 45 |ve.SendT|heMove.E|
|00005de0| 4c 53 45 0d 73 65 74 20 | 74 68 65 20 68 69 6c 69 |LSE.set |the hili|
|00005df0| 74 65 20 6f 66 20 62 61 | 63 6b 67 72 6f 75 6e 64 |te of ba|ckground|
|00005e00| 20 62 75 74 74 6f 6e 20 | 44 65 70 61 72 74 75 72 | button |Departur|
|00005e10| 65 20 74 6f 20 66 61 6c | 73 65 0d 70 75 74 20 65 |e to fal|se.put e|
|00005e20| 6d 70 74 79 20 69 6e 74 | 6f 20 42 75 74 74 6f 6e |mpty int|o Button|
|00005e30| 53 71 75 61 72 65 0d 70 | 75 74 20 22 74 72 75 65 |Square.p|ut "true|
|00005e40| 22 20 69 6e 74 6f 20 46 | 69 72 73 74 48 61 6c 66 |" into F|irstHalf|
|00005e50| 4f 66 4d 6f 76 65 0d 45 | 6e 64 20 49 46 0d 45 6e |OfMove.E|nd IF.En|
|00005e60| 64 20 49 46 0d 45 6e 64 | 20 42 75 69 6c 64 54 68 |d IF.End| BuildTh|
|00005e70| 65 4d 6f 76 65 0d 0d 0d | 46 75 6e 63 74 69 6f 6e |eMove...|Function|
|00005e80| 20 50 61 63 6b 65 74 49 | 73 41 44 61 74 61 54 79 | PacketI|sADataTy|
|00005e90| 70 65 20 4b 69 6e 64 4f | 66 50 61 63 6b 65 74 54 |pe KindO|fPacketT|
|00005ea0| 79 70 65 0d 2d 2d 20 56 | 61 6c 69 64 20 44 61 74 |ype.-- V|alid Dat|
|00005eb0| 61 20 50 61 63 6b 65 74 | 73 20 61 72 65 20 42 6f |a Packet|s are Bo|
|00005ec0| 61 72 64 2c 43 6c 6f 63 | 6b 2c 49 6e 66 6f 2c 4d |ard,Cloc|k,Info,M|
|00005ed0| 6f 76 65 2c 54 61 6b 65 | 62 61 63 6b 0d 49 46 20 |ove,Take|back.IF |
|00005ee0| 4b 69 6e 64 4f 66 50 61 | 63 6b 65 74 54 79 70 65 |KindOfPa|cketType|
|00005ef0| 20 3d 20 22 42 22 20 4f | 52 20 c2 0d 4b 69 6e 64 | = "B" O|R ..Kind|
|00005f00| 4f 66 50 61 63 6b 65 74 | 54 79 70 65 20 3d 20 22 |OfPacket|Type = "|
|00005f10| 43 22 20 4f 52 20 c2 0d | 4b 69 6e 64 4f 66 50 61 |C" OR ..|KindOfPa|
|00005f20| 63 6b 65 74 54 79 70 65 | 20 3d 20 22 49 22 20 4f |cketType| = "I" O|
|00005f30| 52 20 c2 0d 4b 69 6e 64 | 4f 66 50 61 63 6b 65 74 |R ..Kind|OfPacket|
|00005f40| 54 79 70 65 20 3d 20 22 | 4d 22 20 4f 52 20 c2 0d |Type = "|M" OR ..|
|00005f50| 4b 69 6e 64 4f 66 50 61 | 63 6b 65 74 54 79 70 65 |KindOfPa|cketType|
|00005f60| 20 3d 20 22 54 22 20 54 | 48 45 4e 0d 72 65 74 75 | = "T" T|HEN.retu|
|00005f70| 72 6e 20 74 72 75 65 0d | 45 4c 53 45 0d 72 65 74 |rn true.|ELSE.ret|
|00005f80| 75 72 6e 20 66 61 6c 73 | 65 0d 45 6e 64 20 49 46 |urn fals|e.End IF|
|00005f90| 0d 45 6e 64 20 50 61 63 | 6b 65 74 49 73 41 44 61 |.End Pac|ketIsADa|
|00005fa0| 74 61 54 79 70 65 0d 0d | 4f 6e 20 4f 70 65 6e 53 |taType..|On OpenS|
|00005fb0| 74 61 63 6b 0d 47 6c 6f | 62 61 6c 20 4d 6f 76 65 |tack.Glo|bal Move|
|00005fc0| 43 6f 75 6e 74 2c 48 61 | 6c 66 4d 6f 76 65 2c 52 |Count,Ha|lfMove,R|
|00005fd0| 65 73 65 74 47 61 6d 65 | 2c 53 71 75 61 72 65 4e |esetGame|,SquareN|
|00005fe0| 61 6d 65 73 53 68 6f 77 | 69 6e 67 0d 47 6c 6f 62 |amesShow|ing.Glob|
|00005ff0| 61 6c 20 54 6f 70 4f 66 | 49 6e 64 65 78 2c 42 6f |al TopOf|Index,Bo|
|00006000| 74 74 6f 6d 4f 66 49 6e | 64 65 78 2c 53 65 6c 65 |ttomOfIn|dex,Sele|
|00006010| 63 74 65 64 47 61 6d 65 | 2c 50 72 69 6f 72 4c 65 |ctedGame|,PriorLe|
|00006020| 76 65 6c 0d 47 6c 6f 62 | 61 6c 20 74 68 65 42 75 |vel.Glob|al theBu|
|00006030| 66 66 65 72 2c 53 4f 48 | 2c 45 54 42 2c 50 61 63 |ffer,SOH|,ETB,Pac|
|00006040| 6b 65 74 53 65 71 75 65 | 6e 63 65 4e 75 6d 62 65 |ketSeque|nceNumbe|
|00006050| 72 0d 47 6c 6f 62 61 6c | 20 46 69 72 73 74 48 61 |r.Global| FirstHa|
|00006060| 6c 66 4f 66 4d 6f 76 65 | 2c 50 61 63 6b 65 74 46 |lfOfMove|,PacketF|
|00006070| 72 6f 6d 52 65 6d 6f 74 | 65 2c 74 65 72 6d 69 6e |romRemot|e,termin|
|00006080| 61 74 6f 72 0d 47 6c 6f | 62 61 6c 20 41 43 4b 46 |ator.Glo|bal ACKF|
|00006090| 6c 61 67 2c 41 43 4b 53 | 74 72 69 6e 67 2c 41 43 |lag,ACKS|tring,AC|
|000060a0| 4b 74 79 70 65 2c 4e 41 | 43 4b 53 74 72 69 6e 67 |Ktype,NA|CKString|
|000060b0| 2c 4e 41 43 4b 74 79 70 | 65 0d 47 6c 6f 62 61 6c |,NACKtyp|e.Global|
|000060c0| 20 43 6c 6f 63 6b 46 6c | 61 67 2c 41 6c 6c 6f 77 | ClockFl|ag,Allow|
|000060d0| 65 64 54 75 72 6e 41 72 | 6f 75 6e 64 54 69 6d 65 |edTurnAr|oundTime|
|000060e0| 2c 4d 79 4d 6f 76 65 46 | 6c 61 67 0d 47 6c 6f 62 |,MyMoveF|lag.Glob|
|000060f0| 61 6c 20 54 6f 75 63 68 | 4d 6f 64 65 2c 46 69 72 |al Touch|Mode,Fir|
|00006100| 73 74 54 69 6d 65 48 65 | 72 65 2c 50 6c 61 79 4d |stTimeHe|re,PlayM|
|00006110| 6f 64 65 2c 4d 41 43 74 | 6f 4d 41 43 2c 53 69 6e |ode,MACt|oMAC,Sin|
|00006120| 67 6c 65 4d 41 43 0d 47 | 6c 6f 62 61 6c 20 48 61 |gleMAC.G|lobal Ha|
|00006130| 79 65 73 41 75 74 6f 41 | 6e 73 77 65 72 2c 43 6c |yesAutoA|nswer,Cl|
|00006140| 6f 63 6b 54 65 6d 70 6f | 72 61 72 69 6c 79 4f 66 |ockTempo|rarilyOf|
|00006150| 66 46 6c 61 67 2c 46 6f | 75 6e 64 53 4f 48 0d 47 |fFlag,Fo|undSOH.G|
|00006160| 6c 6f 62 61 6c 20 4c 6f | 6f 70 42 61 63 6b 46 6c |lobal Lo|opBackFl|
|00006170| 61 67 2c 56 69 73 69 62 | 6c 65 4d 6f 64 65 46 6c |ag,Visib|leModeFl|
|00006180| 61 67 2c 43 6f 6e 6e 65 | 63 74 69 6f 6e 53 74 72 |ag,Conne|ctionStr|
|00006190| 69 6e 67 2c 42 65 6c 6c | 0d 47 6c 6f 62 61 6c 20 |ing,Bell|.Global |
|000061a0| 54 69 6d 65 4f 75 74 4d | 65 73 73 61 67 65 2c 4e |TimeOutM|essage,N|
|000061b0| 41 4b 4d 65 73 73 61 67 | 65 2c 4f 4b 4d 65 73 73 |AKMessag|e,OKMess|
|000061c0| 61 67 65 2c 52 65 63 65 | 69 76 65 64 42 61 64 4d |age,Rece|ivedBadM|
|000061d0| 65 73 73 61 67 65 0d 47 | 6c 6f 62 61 6c 20 42 65 |essage.G|lobal Be|
|000061e0| 65 70 46 6c 61 67 2c 43 | 6f 6e 6e 65 63 74 69 6f |epFlag,C|onnectio|
|000061f0| 6e 44 65 6c 61 79 2c 45 | 64 69 74 4d 6f 64 65 46 |nDelay,E|ditModeF|
|00006200| 6c 61 67 2c 4d 6f 76 65 | 4c 6f 63 6b 65 64 46 6c |lag,Move|LockedFl|
|00006210| 61 67 0d 47 6c 6f 62 61 | 6c 20 4d 6f 64 65 6d 4f |ag.Globa|l ModemO|
|00006220| 72 4a 75 6e 6b 43 68 61 | 72 73 2c 4c 65 67 61 6c |rJunkCha|rs,Legal|
|00006230| 46 65 61 74 75 72 65 46 | 6c 61 67 2c 4c 65 67 61 |FeatureF|lag,Lega|
|00006240| 6c 4d 6f 76 65 53 74 72 | 69 6e 67 0d 47 6c 6f 62 |lMoveStr|ing.Glob|
|00006250| 61 6c 20 50 6c 61 79 4c | 65 76 65 6c 2c 43 4f 4d |al PlayL|evel,COM|
|00006260| 50 55 54 45 52 2c 54 61 | 6b 65 42 61 63 6b 50 72 |PUTER,Ta|keBackPr|
|00006270| 65 66 2c 4f 4b 4d 6f 76 | 65 31 2c 4f 4b 4d 6f 76 |ef,OKMov|e1,OKMov|
|00006280| 65 32 0d 47 6c 6f 62 61 | 6c 20 45 76 61 6c 46 6c |e2.Globa|l EvalFl|
|00006290| 61 67 2c 53 68 6f 77 4c | 65 67 61 6c 53 71 75 61 |ag,ShowL|egalSqua|
|000062a0| 72 65 73 46 6c 61 67 2c | 4d 6f 76 65 54 72 65 65 |resFlag,|MoveTree|
|000062b0| 46 6c 61 67 2c 44 65 6d | 6f 4d 6f 76 65 4e 6f 0d |Flag,Dem|oMoveNo.|
|000062c0| 47 6c 6f 62 61 6c 20 43 | 6f 6d 70 75 74 65 72 4a |Global C|omputerJ|
|000062d0| 75 73 74 4d 6f 76 65 64 | 2c 57 61 74 63 68 46 6c |ustMoved|,WatchFl|
|000062e0| 61 67 2c 50 4d 0d 0d 67 | 6c 6f 62 61 6c 20 67 6c |ag,PM..g|lobal gl|
|000062f0| 6f 62 61 6c 41 54 50 44 | 61 74 61 2c 20 67 6c 6f |obalATPD|ata, glo|
|00006300| 62 61 6c 52 65 73 70 6f | 6e 73 65 44 61 74 61 0d |balRespo|nseData.|
|00006310| 67 6c 6f 62 61 6c 20 67 | 6c 6f 62 61 6c 52 65 63 |global g|lobalRec|
|00006320| 65 69 76 65 44 61 74 61 | 2c 20 20 6d 79 45 6e 74 |eiveData|, myEnt|
|00006330| 69 74 79 4e 61 6d 65 0d | 67 6c 6f 62 61 6c 20 67 |ityName.|global g|
|00006340| 6c 6f 62 61 6c 53 4b 54 | 44 61 74 61 2c 20 67 6c |lobalSKT|Data, gl|
|00006350| 6f 62 61 6c 4e 42 50 44 | 61 74 61 0d 67 6c 6f 62 |obalNBPD|ata.glob|
|00006360| 61 6c 20 41 70 70 6c 65 | 54 61 6c 6b 46 6c 61 67 |al Apple|TalkFlag|
|00006370| 0d 0d 70 75 74 20 66 61 | 6c 73 65 20 69 6e 74 6f |..put fa|lse into|
|00006380| 20 41 70 70 6c 65 54 61 | 6c 6b 46 6c 61 67 0d 70 | AppleTa|lkFlag.p|
|00006390| 75 74 20 66 61 6c 73 65 | 20 69 6e 74 6f 20 53 65 |ut false| into Se|
|000063a0| 72 69 61 6c 50 6f 72 74 | 46 6c 61 67 0d 70 75 74 |rialPort|Flag.put|
|000063b0| 20 74 72 75 65 20 69 6e | 74 6f 20 4c 65 67 61 6c | true in|to Legal|
|000063c0| 46 65 61 74 75 72 65 46 | 6c 61 67 0d 70 75 74 20 |FeatureF|lag.put |
|000063d0| 22 4c 65 67 61 6c 22 20 | 69 6e 74 6f 20 4c 65 67 |"Legal" |into Leg|
|000063e0| 61 6c 4d 6f 76 65 53 74 | 72 69 6e 67 0d 73 65 74 |alMoveSt|ring.set|
|000063f0| 20 74 68 65 20 6c 6f 63 | 6b 73 63 72 65 65 6e 20 | the loc|kscreen |
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.